← Back to history

Pipeline run

5d9387ad-7503-4ef1-a00b-1d568fd15ae9

Pipeline LLM cost (USD)
API 1: $0.0030 API 2: $0.0001 API 3: $0.0000 Total: $0.0031

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 · End-to-end feature delivery
Leads Android Bluetooth stack work end to end: designing, implementing, and maintaining connectivity for first- and third-party devices, while shaping long-term Bluetooth strategy and APIs/libraries with partner teams.
""Design, implement, and maintain Android Bluetooth Connectivity stack""
Tech stack maturity
Mainstream Modern
Android and API development with Bluetooth integration are established, widely used technologies typically associated with mainstream modern application stacks rather than legacy or bleeding-edge environments.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
2.00 / 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): Artificial Intelligence
Evidence — skills matched in JD (4)
Bluetooth Android API Library
Skill cluster (3 dimension groups, role-scoped)
API Integration and Data Fetching
API
Device APIs and Hardware Integration
Bluetooth
Cross-cutting / unaligned
Android Library
Show KRA description ↓
• Lead new features and technologies within the Bluetooth domain along with proposing long-term technical strategy. • Design, implement, and maintain Android Bluetooth Connectivity stack for both first-party and third-party devices. • Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry. • Help build the next generation of APIs and library for first-party and third-party developers. • Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.

Signals

Skill full-stack-engineer
0.25
Alias full-stack-engineer
1.00
KRA flutter-developer
0.54

Post-classification

Centroidupdated · n=691
Alias collision log
New-role queue
New skills captured1
New KRA captured

Captured for admin review

Library primary Fullstack Developer pending
Status: completed Created: 2026-05-27T16:28:12.215128Z Updated: 2026-05-27T16:29:22.318545Z API 3 duration: 18500 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

Fullstack Developer

CASE A

slug: full-stack-engineer · id: 15 · source: db

Exact alias hit on full-stack-engineer (1.0) — no other alias at this confidence; skill_top full-stack-engineer 0.25 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

Minimum qualifications:

• Bachelor's degree or equivalent practical experience.
• 8 years of experience in software development, and with data structures/algorithms.
• 5 years of experience testing, and launching software products, and 3 years of experience with software design and architecture.


Preferred qualifications:

• Master's degree in Computer Science, Electrical Engineering, Computer Engineering, a related technical field, or equivalent practical experience.
• 5 years of work experience in Bluetooth stack development.
• Experience designing/building or working with other Bluetooth stack architectures.
• Experience designing APIs and working on frameworks.
• Experience coding in C++, Java, or Rust.


About The Job

Google's software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. Our products need to handle information at massive scale, and extend well beyond web search. We're looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile; the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google’s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward.

With your technical expertise you will manage project priorities, deadlines, and deliverables. You will design, develop, test, deploy, maintain, and enhance software solutions.

Android is Google’s open-source mobile operating system powering more than 3 billion devices worldwide. Android is about bringing computing to everyone in the world. We believe computing is a super power for good, enabling access to information, economic opportunity, productivity, connectivity between friends and family and more. We think everyone in the world should have access to the best computing has to offer. We provide the platform for original equipment manufacturers (OEMs) and developers to build compelling computing devices (smartphones, tablets, TVs, wearables, etc) that run the best apps/services for everyone in the world.

Responsibilities

• Lead new features and technologies within the Bluetooth domain along with proposing long-term technical strategy.
• Design, implement, and maintain Android Bluetooth Connectivity stack for both first-party and third-party devices.
• Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.
• Help build the next generation of APIs and library for first-party and third-party developers.
• Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.



Google is proud to be an equal opportunity workplace and is an affirmative action employer. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. See also Google's EEO Policy and EEO is the Law. If you have a disability or special need that requires accommodation, please let us know by completing our Accommodations for Applicants form .

Skills from this JD

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

Bluetooth Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Bluetooth id=990 · bluetooth

Aliases — catalog

  • Bluetooth (CANONICAL) primary

Context tags (catalog)

BLE Bluetooth Low Energy Bluetooth SIG GATT HCI IoT IoT connectivity L2CAP LE Secure Connections RFCOMM SMP advertising audio streaming data transfer device discovery mesh networking pairing profiles security features security modes smart devices wireless communication

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Bluetooth Concept
Vendor
Bluetooth Special Interest Group
License
unknown
Year introduced
1998
Confidence
0.95
Version strategy
NOT_APPLICABLE

Maturity reasoning: Bluetooth appears in many hardware, mobile, IoT, and embedded job descriptions; it remains a standard connectivity requirement rather than a niche or sunset technology.

Skill profile (library / DB)

Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
2
Sub-category id
2202
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Device APIs and Hardware Features Catalog dimension db id 95

    Library dimension (catalog)

    Roles linked in library: Android Developer, Native Mobile Developer, iOS Developer

  • Device APIs and Hardware Integration Catalog dimension db id 171

    Library dimension (catalog)

    Roles linked in library: Hybrid Mobile Developer, React Native Developer

  • Platform Channels and Device APIs Catalog dimension db id 314

    Library dimension (catalog)

    Roles linked in library: Flutter Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Device APIs and Hardware Features
device-apis-and-hardware-features
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Device APIs and Hardware Integration
device-apis-and-hardware-integration
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Platform Channels and Device APIs
platform-channels-and-device-apis
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Android Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Android id=1595 · android

Aliases — catalog

  • Android (CANONICAL)

Context tags (catalog)

API Level Android SDK Android Studio Firebase Gradle Java Jetpack Kotlin LiveData MVVM Material Design RecyclerView Retrofit Room XML

Stored enrichment (catalog DB)

Category
Platform
Sub-category
Mobile Platform
Vendor
Google
License
apache_2
Year introduced
2008
Confidence
0.95
Version strategy
NOT_APPLICABLE

Maturity reasoning: Android appears in large volumes of mobile job postings and remains a standard platform in hiring pipelines; Google continues active platform releases and OEM ecosystem support, indicating broad adoption.

Skill profile (library / DB)

Skill nature
PLATFORM
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
9
Sub-category id
1201
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • React Frontend Development Catalog dimension db id 96

    Library dimension (catalog)

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
API Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: API id=1568 · api

Aliases — catalog

  • API (CANONICAL)

Context tags (catalog)

API gateway GraphQL JSON OAuth REST SDK SOAP XML authentication endpoint microservices rate limiting throttling versioning webhooks

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Application Programming Interface
Confidence
0.93
Version strategy
NOT_APPLICABLE

Maturity reasoning: APIs are a core requirement in most software engineering JDs and underpin common integrations across cloud, mobile, and web stacks; major vendors like AWS, Stripe, and Google Cloud center products on API-first usage.

Skill profile (library / DB)

Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
2
Sub-category id
1174
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • API Integration and Data Fetching Catalog dimension db id 127

    Library dimension (catalog)

    Roles linked in library: Angular Frontend Developer, Frontend Developer, Fullstack Developer, Fullstack Developer, React Frontend Developer, Svelte Frontend Developer, Vue Frontend Developer, Web Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
API Integration and Data Fetching
api-integration-and-data-fetching
Existing dimension (library) · Role↔dimension saved
Library 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
Software Tools
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
Bluetooth in_db
Device APIs and Hardware Features
device-apis-and-hardware-features
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Bluetooth in_db
Device APIs and Hardware Integration
device-apis-and-hardware-integration
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Bluetooth in_db
Platform Channels and Device APIs
platform-channels-and-device-apis
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Android in_db
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
API in_db
API Integration and Data Fetching
api-integration-and-data-fetching
Existing dimension (library) · Role↔dimension saved

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Library | type=Software Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleSoftware Engineer
CompanyGoogle
Experience8 years of experience in software development
DomainSoftware & SaaS Products
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": {
    "source_marker": {
      "first_5_words": "Google\u0027s software engineers develop the",
      "last_5_words": "push technology forward."
    },
    "text": "Google\u0027s software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. Our products need to handle information at massive scale, and extend well beyond web search. We\u0027re looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile; the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google\u2019s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward.",
    "word_count": 116
  },
  "certifications": [],
  "company_name": "Google",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "SaaS",
        "Product Companies"
      ],
      "domain": "Software \u0026 SaaS Products"
    },
    "secondary": null
  },
  "education": [
    {
      "level": "Bachelor\u0027s",
      "qualification": "BTECH/BE/BSC - Any Discipline",
      "raw": "Bachelor\u0027s degree or equivalent practical experience.",
      "requirement": "required"
    },
    {
      "level": "Master\u0027s",
      "qualification": "MTECH/ME/MSC - Computer Science / Electrical Engineering / Computer Engineering (or related)",
      "raw": "Master\u0027s degree in Computer Science, Electrical Engineering, Computer Engineering, a related technical field, or equivalent practical experience.",
      "requirement": "preferred"
    }
  ],
  "experience": {
    "max": null,
    "min": 8,
    "raw": "8 years of experience in software development"
  },
  "job_locations": [],
  "role": "Software Engineer",
  "role_aliases": [
    "Software Developer",
    "SWE",
    "Full Stack Engineer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 5,
      "heading": "Responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Lead new features and technologies",
        "last_5_words": "high-quality solutions in a timely manner."
      },
      "text": "\u2022 Lead new features and technologies within the Bluetooth domain along with proposing long-term technical strategy.\n\u2022 Design, implement, and maintain Android Bluetooth Connectivity stack for both first-party and third-party devices.\n\u2022 Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.\n\u2022 Help build the next generation of APIs and library for first-party and third-party developers.\n\u2022 Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
      "word_count": 66
    }
  ],
  "urls": []
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Bluetooth"
    },
    {
      "is_primary": true,
      "skill_name": "Android"
    },
    {
      "is_primary": true,
      "skill_name": "API"
    },
    {
      "is_primary": true,
      "skill_name": "Library"
    }
  ],
  "jd_role": {
    "display_name": "Software Engineer",
    "rationale": null,
    "role_aliases": [
      "Software Developer",
      "SWE",
      "Full Stack Engineer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": {
      "source_marker": {
        "first_5_words": "Google\u0027s software engineers develop the",
        "last_5_words": "push technology forward."
      },
      "text": "Google\u0027s software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. Our products need to handle information at massive scale, and extend well beyond web search. We\u0027re looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile; the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google\u2019s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward.",
      "word_count": 116
    },
    "certifications": [],
    "company_name": "Google",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "SaaS",
          "Product Companies"
        ],
        "domain": "Software \u0026 SaaS Products"
      },
      "secondary": null
    },
    "education": [
      {
        "level": "Bachelor\u0027s",
        "qualification": "BTECH/BE/BSC - Any Discipline",
        "raw": "Bachelor\u0027s degree or equivalent practical experience.",
        "requirement": "required"
      },
      {
        "level": "Master\u0027s",
        "qualification": "MTECH/ME/MSC - Computer Science / Electrical Engineering / Computer Engineering (or related)",
        "raw": "Master\u0027s degree in Computer Science, Electrical Engineering, Computer Engineering, a related technical field, or equivalent practical experience.",
        "requirement": "preferred"
      }
    ],
    "experience": {
      "max": null,
      "min": 8,
      "raw": "8 years of experience in software development"
    },
    "job_locations": [],
    "role": "Software Engineer",
    "role_aliases": [
      "Software Developer",
      "SWE",
      "Full Stack Engineer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 5,
        "heading": "Responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Lead new features and technologies",
          "last_5_words": "high-quality solutions in a timely manner."
        },
        "text": "\u2022 Lead new features and technologies within the Bluetooth domain along with proposing long-term technical strategy.\n\u2022 Design, implement, and maintain Android Bluetooth Connectivity stack for both first-party and third-party devices.\n\u2022 Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.\n\u2022 Help build the next generation of APIs and library for first-party and third-party developers.\n\u2022 Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
        "word_count": 66
      }
    ],
    "urls": []
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "5d9387ad-7503-4ef1-a00b-1d568fd15ae9",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "Fullstack Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 1.0,
        "slug": "full-stack-engineer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Flutter Developer",
        "kra_matches": [
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
            "similarity": 0.6295
          },
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.",
            "similarity": 0.5097
          },
          {
            "kra_text": "integrate external APIs and data sources",
            "sentence": "Help build the next generation of APIs and library for first-party and third-party developers.",
            "similarity": 0.4673
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 74,
        "score": 0.5355,
        "slug": "flutter-developer",
        "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": "Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
            "similarity": 0.5675
          },
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.",
            "similarity": 0.4365
          },
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "Lead new features and technologies within the Bluetooth domain along with proposing long-term technical strategy.",
            "similarity": 0.4323
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 0.4788,
        "slug": "full-stack-engineer",
        "total_count": null
      },
      {
        "display_name": "DevOps Engineer",
        "kra_matches": [
          {
            "kra_text": "Collaborates with development teams to improve build processes, reduce deployment friction, containerize applications, and adopt DevOps best practices.",
            "sentence": "Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
            "similarity": 0.5257
          },
          {
            "kra_text": "Collaborates with development teams to improve build processes, reduce deployment friction, containerize applications, and adopt DevOps best practices.",
            "sentence": "Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.",
            "similarity": 0.4698
          },
          {
            "kra_text": "Collaborates with development teams to improve build processes, reduce deployment friction, containerize applications, and adopt DevOps best practices.",
            "sentence": "Help build the next generation of APIs and library for first-party and third-party developers.",
            "similarity": 0.3871
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 10,
        "score": 0.4608,
        "slug": "devops-engineer",
        "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": "Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
            "similarity": 0.4605
          },
          {
            "kra_text": "Collaborates with UX designers to refine interaction details, animations, responsive breakpoints, and micro-interaction behavior.",
            "sentence": "Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.",
            "similarity": 0.4567
          },
          {
            "kra_text": "Maintains reusable component libraries, design system tokens, and shared UI patterns across the application to ensure visual and behavioral consistency.",
            "sentence": "Help build the next generation of APIs and library for first-party and third-party developers.",
            "similarity": 0.4057
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 7,
        "score": 0.4409,
        "slug": "frontend-engineer",
        "total_count": null
      },
      {
        "display_name": "Cloud Architect",
        "kra_matches": [
          {
            "kra_text": "Conducts architecture reviews, approves technical design documents, and guides engineering teams through cloud migration and modernization projects.",
            "sentence": "Partner and collaborate with related engineering teams, product management, and program management to ensure the development of high-quality solutions in a timely manner.",
            "similarity": 0.4865
          },
          {
            "kra_text": "Conducts architecture reviews, approves technical design documents, and guides engineering teams through cloud migration and modernization projects.",
            "sentence": "Lead new features and technologies within the Bluetooth domain along with proposing long-term technical strategy.",
            "similarity": 0.4469
          },
          {
            "kra_text": "Conducts architecture reviews, approves technical design documents, and guides engineering teams through cloud migration and modernization projects.",
            "sentence": "Collaborate with internal and external partner teams to refine and define the Bluetooth stack and scaling it to the industry.",
            "similarity": 0.3679
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 9,
        "score": 0.4338,
        "slug": "cloud-architect",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "Fullstack Developer",
        "kra_matches": null,
        "matched_count": 1,
        "matched_skills": [
          "API"
        ],
        "role_id": 15,
        "score": 0.25,
        "slug": "full-stack-engineer",
        "total_count": 4
      },
      {
        "display_name": "iOS Developer",
        "kra_matches": null,
        "matched_count": 1,
        "matched_skills": [
          "Bluetooth"
        ],
        "role_id": 6,
        "score": 0.25,
        "slug": "ios-engineer",
        "total_count": 4
      },
      {
        "display_name": "Frontend Developer",
        "kra_matches": null,
        "matched_count": 1,
        "matched_skills": [
          "API"
        ],
        "role_id": 7,
        "score": 0.25,
        "slug": "frontend-engineer",
        "total_count": 4
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": null,
        "matched_count": 1,
        "matched_skills": [
          "Bluetooth"
        ],
        "role_id": 11,
        "score": 0.25,
        "slug": "hybrid-mobile-developer",
        "total_count": 4
      },
      {
        "display_name": "Android Developer",
        "kra_matches": null,
        "matched_count": 1,
        "matched_skills": [
          "Bluetooth"
        ],
        "role_id": 4,
        "score": 0.25,
        "slug": "android-engineer",
        "total_count": 4
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": false,
    "case": "A",
    "chosen_role": {
      "display_name": "Fullstack Developer",
      "kra_matches": null,
      "matched_count": null,
      "matched_skills": null,
      "role_id": 15,
      "score": 1.0,
      "slug": "full-stack-engineer",
      "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 full-stack-engineer (1.0) \u2014 no other alias at this confidence; skill_top full-stack-engineer 0.25 does not contradict",
    "sub_role": null
  },
  "stage5_updates": {
    "centroid_n_after": 691,
    "centroid_updated": true,
    "collision_log_id": null,
    "new_kra_attached": null,
    "new_skills_attached": [
      {
        "is_primary": true,
        "queue_id": 20200,
        "role_display_name": "Fullstack Developer",
        "role_slug": "full-stack-engineer",
        "skill_name": "Library",
        "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": 1600,
      "existing_alias_text": "Bluetooth",
      "input_term": "Bluetooth",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "Bluetooth",
        "id": 990,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "bluetooth",
        "sub_category_id": 2202,
        "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": 2541,
      "existing_alias_text": "Android",
      "input_term": "Android",
      "matched_canonical": {
        "category_id": 9,
        "display_name": "Android",
        "id": 1595,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "android",
        "sub_category_id": 1201,
        "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": 2514,
      "existing_alias_text": "API",
      "input_term": "API",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "API",
        "id": 1568,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "api",
        "sub_category_id": 1174,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Android Developer",
      "id": 4,
      "rationale": null,
      "role_archetype": null,
      "slug": "android-engineer",
      "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": "Hybrid Mobile Developer",
      "id": 11,
      "rationale": null,
      "role_archetype": null,
      "slug": "hybrid-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "React Native Developer",
      "id": 73,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-native-developer",
      "source": "db"
    },
    {
      "display_name": "Flutter Developer",
      "id": 74,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "flutter-developer",
      "source": "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": "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": "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"
    },
    {
      "display_name": "Web Developer",
      "id": 25,
      "rationale": null,
      "role_archetype": null,
      "slug": "web-developer",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "Fullstack Developer",
    "id": 15,
    "rationale": "Exact alias hit on full-stack-engineer (1.0) \u2014 no other alias at this confidence; skill_top full-stack-engineer 0.25 does not contradict",
    "role_archetype": null,
    "slug": "full-stack-engineer",
    "source": "db"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Device APIs and Hardware Features",
        "id": 95,
        "rationale": "iOS platform APIs that expose hardware and device capabilities to apps. This cluster covers the concrete integrations iOS engineers use for camera, sensors, location, and media experiences.",
        "slug": "device-apis-and-hardware-features",
        "source": "db"
      },
      "input_skill": "Bluetooth",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "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"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Device APIs and Hardware Integration",
        "id": 171,
        "rationale": "Platform capabilities exposed through mobile devices that shared apps commonly integrate with. This includes sensors, camera, location, Bluetooth, file access, and other device-bound features that require platform-aware adaptation.",
        "slug": "device-apis-and-hardware-integration",
        "source": "db"
      },
      "input_skill": "Bluetooth",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Platform Channels and Device APIs",
        "id": 314,
        "rationale": "Bridges between Flutter code and platform-specific capabilities exposed by Android, iOS, and device hardware. This cluster is coherent because Flutter developers often need to call native APIs when shared widgets are not enough.",
        "slug": "platform-channels-and-device-apis",
        "source": "db"
      },
      "input_skill": "Bluetooth",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "React Frontend Development",
        "id": 96,
        "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
        "slug": "d_init_01",
        "source": "db"
      },
      "input_skill": "Android",
      "llm_role": null,
      "roles_from_db": []
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "API Integration and Data Fetching",
        "id": 127,
        "rationale": "Client-side integration with backend endpoints and third-party services, including request shaping, response handling, and synchronization with UI state. This is central to frontend work because most screens depend on remote data.",
        "slug": "api-integration-and-data-fetching",
        "source": "db"
      },
      "input_skill": "API",
      "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": "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": "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"
        },
        {
          "display_name": "Web Developer",
          "id": 25,
          "rationale": null,
          "role_archetype": null,
          "slug": "web-developer",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Bluetooth",
    "Android",
    "API",
    "Library"
  ],
  "input_llm_skills": [
    "Bluetooth",
    "Android",
    "API",
    "Library"
  ],
  "new_aliases_persisted": 0,
  "run_id": "5d9387ad-7503-4ef1-a00b-1d568fd15ae9",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Bluetooth",
          "alias_type": "CANONICAL",
          "id": 1600,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "Bluetooth",
        "id": 990,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "bluetooth",
        "sub_category_id": 2202,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Device APIs and Hardware Features",
            "id": 95,
            "rationale": "iOS platform APIs that expose hardware and device capabilities to apps. This cluster covers the concrete integrations iOS engineers use for camera, sensors, location, and media experiences.",
            "slug": "device-apis-and-hardware-features",
            "source": "db"
          },
          "input_skill": "Bluetooth",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "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"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Device APIs and Hardware Integration",
            "id": 171,
            "rationale": "Platform capabilities exposed through mobile devices that shared apps commonly integrate with. This includes sensors, camera, location, Bluetooth, file access, and other device-bound features that require platform-aware adaptation.",
            "slug": "device-apis-and-hardware-integration",
            "source": "db"
          },
          "input_skill": "Bluetooth",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Platform Channels and Device APIs",
            "id": 314,
            "rationale": "Bridges between Flutter code and platform-specific capabilities exposed by Android, iOS, and device hardware. This cluster is coherent because Flutter developers often need to call native APIs when shared widgets are not enough.",
            "slug": "platform-channels-and-device-apis",
            "source": "db"
          },
          "input_skill": "Bluetooth",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Bluetooth",
      "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": [
        {
          "alias_text": "Android",
          "alias_type": "CANONICAL",
          "id": 2541,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 9,
        "display_name": "Android",
        "id": 1595,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "android",
        "sub_category_id": 1201,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "React Frontend Development",
            "id": 96,
            "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
            "slug": "d_init_01",
            "source": "db"
          },
          "input_skill": "Android",
          "llm_role": null,
          "roles_from_db": []
        }
      ],
      "input_skill": "Android",
      "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": [
        {
          "alias_text": "API",
          "alias_type": "CANONICAL",
          "id": 2514,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "API",
        "id": 1568,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "api",
        "sub_category_id": 1174,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "API Integration and Data Fetching",
            "id": 127,
            "rationale": "Client-side integration with backend endpoints and third-party services, including request shaping, response handling, and synchronization with UI state. This is central to frontend work because most screens depend on remote data.",
            "slug": "api-integration-and-data-fetching",
            "source": "db"
          },
          "input_skill": "API",
          "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": "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": "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"
            },
            {
              "display_name": "Web Developer",
              "id": 25,
              "rationale": null,
              "role_archetype": null,
              "slug": "web-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "API",
      "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": "Library",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Software 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": "library",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "Library"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "Fullstack Developer",
    "id": 15,
    "rationale": "Exact alias hit on full-stack-engineer (1.0) \u2014 no other alias at this confidence; skill_top full-stack-engineer 0.25 does not contradict",
    "role_archetype": null,
    "slug": "full-stack-engineer",
    "source": "db"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "Bluetooth",
      "tag": "in_db"
    },
    {
      "skill": "Android",
      "tag": "in_db"
    },
    {
      "skill": "API",
      "tag": "in_db"
    },
    {
      "skill": "Library",
      "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": 15,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Device APIs and Hardware Features",
          "id": 95,
          "rationale": "iOS platform APIs that expose hardware and device capabilities to apps. This cluster covers the concrete integrations iOS engineers use for camera, sensors, location, and media experiences.",
          "slug": "device-apis-and-hardware-features",
          "source": "db"
        },
        "dimension_id": 95,
        "input_skill": "Bluetooth",
        "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": "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 990,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 15,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Device APIs and Hardware Integration",
          "id": 171,
          "rationale": "Platform capabilities exposed through mobile devices that shared apps commonly integrate with. This includes sensors, camera, location, Bluetooth, file access, and other device-bound features that require platform-aware adaptation.",
          "slug": "device-apis-and-hardware-integration",
          "source": "db"
        },
        "dimension_id": 171,
        "input_skill": "Bluetooth",
        "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": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 990,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 15,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Platform Channels and Device APIs",
          "id": 314,
          "rationale": "Bridges between Flutter code and platform-specific capabilities exposed by Android, iOS, and device hardware. This cluster is coherent because Flutter developers often need to call native APIs when shared widgets are not enough.",
          "slug": "platform-channels-and-device-apis",
          "source": "db"
        },
        "dimension_id": 314,
        "input_skill": "Bluetooth",
        "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": "Flutter Developer",
            "id": 74,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "flutter-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 990,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 15,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "React Frontend Development",
          "id": 96,
          "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
          "slug": "d_init_01",
          "source": "db"
        },
        "dimension_id": 96,
        "input_skill": "Android",
        "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": [],
        "skill_dimension_saved": true,
        "skill_id": 1595,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 15,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "API Integration and Data Fetching",
          "id": 127,
          "rationale": "Client-side integration with backend endpoints and third-party services, including request shaping, response handling, and synchronization with UI state. This is central to frontend work because most screens depend on remote data.",
          "slug": "api-integration-and-data-fetching",
          "source": "db"
        },
        "dimension_id": 127,
        "input_skill": "API",
        "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": "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": "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": "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"
          },
          {
            "display_name": "Web Developer",
            "id": 25,
            "rationale": null,
            "role_archetype": null,
            "slug": "web-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1568,
        "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": "5d9387ad-7503-4ef1-a00b-1d568fd15ae9"
}