{% extends "base.html" %} {% block title %}{{ sess.name }} — AI Data Mapping — ICDEV{% endblock %} {% block content %}
CUI // SP-CTI — CONTROLLED UNCLASSIFIED INFORMATION

{{ sess.name }}

{{ sess.status }} {{ sess.source_format | replace('_',' ') }} → {{ sess.target_format | replace('_',' ') }}  |  {{ sess.field_count }} fields  |  {{ sess.confirmed_count }} confirmed
← Sessions
{% if not src_fields and not tgt_fields %}

Paste Schemas to Start Mapping

{% endif %}
Source ({{ src_fields | length }} fields)
{% for f in src_fields %}
{{ f.name }} {{ f.type }}
{% else %}
Ingest a schema above.
{% endfor %}
{% set pending_maps = field_mappings | selectattr('status', 'in', ['pending','needs_review']) | list %} {% set confirmed_maps = field_mappings | selectattr('status', 'equalto', 'confirmed') | list %} {% set rejected_maps = field_mappings | selectattr('status', 'equalto', 'rejected') | list %} {% if confirmed_maps %}

✓ Confirmed ({{ confirmed_maps | length }})

{% for p in confirmed_maps %}
{{ p.source_field }} ({{ p.source_type }}) {{ p.target_field }} ({{ p.target_type }})
{{ (p.confidence * 100) | round(1) }}% {{ p.match_method }}
{% endfor %}
{% endif %} {% if pending_maps %}

⏳ Pending Review ({{ pending_maps | length }})

{% for p in pending_maps %}
{{ p.source_field }} ({{ p.source_type }}) {{ p.target_field }} ({{ p.target_type }})
{{ (p.confidence * 100) | round(1) }}% {{ p.match_method }} {% if p.status == 'needs_review' %}⚠ low confidence{% endif %}
{% endfor %}
{% endif %} {% if not field_mappings %}

No field mappings yet.

{% if src_fields %}

Click ⚡ Run AI Suggest to generate mappings.

{% else %}

First ingest your source and target schemas above.

{% endif %}
{% endif %}
Target ({{ tgt_fields | length }} fields)
{% for f in tgt_fields %}
{{ f.name }} {{ f.type }}
{% else %}
Ingest a schema above.
{% endfor %}
{% endblock %}