diff --git a/geant/gap_ansible/CHANGELOG.md b/geant/gap_ansible/CHANGELOG.md
index edbbe072e8b81ae487ec8c485a8a4816fe93f49b..5cc1d986ec61450b73263d11ba43a6e3eeb83c3e 100644
--- a/geant/gap_ansible/CHANGELOG.md
+++ b/geant/gap_ansible/CHANGELOG.md
@@ -1,4 +1,11 @@
 # GAP Ansible changelog
+1.0.86:
+- Update in `iptrunk` vars: `minimum_links` now only come as part of `iptrunk` object from GSO. This will rectify misconfiguration on the Juniper side.
+1.0.85:
+- Update in `port-threshold` calculation in `iptrunk` role.
+- Update in `iptrunk_checks` role (Skip Juniper side checks if interface is not 'et-'; skip optical diff if not called from `iptrunk_migration` role).
+1.0.84:
+- Update config parameters for TTL-expired in `iptrunk` and `iptrunk_migration` roles.
 1.0.83:
 - Update iBGP groups when terminating PE router: a) Remove PE from PE mesh; b) Remove PE from P routers config.
 1.0.82:
diff --git a/geant/gap_ansible/galaxy.yml b/geant/gap_ansible/galaxy.yml
index 3b60bc57780a276f49e64e08e3b560f959c724b2..8c37f14efa36bc300187ca460cb7a18b0b996140 100644
--- a/geant/gap_ansible/galaxy.yml
+++ b/geant/gap_ansible/galaxy.yml
@@ -8,7 +8,7 @@ namespace: geant
 name: gap_ansible
 
 # The version of the collection. Must be compatible with semantic versioning
-version: 1.0.83
+version: 1.0.86
 
 # The path to the Markdown (.md) readme file. This path is relative to the root of the collection
 readme: README.md
diff --git a/geant/gap_ansible/roles/iptrunk/templates/nokia/trunk_interface.j2 b/geant/gap_ansible/roles/iptrunk/templates/nokia/trunk_interface.j2
index 7dc479beab2a1f6bc4726e695c79789bce5ffa95..bfdb3d26423b2f98000dfcdc5276c2fb7040613f 100644
--- a/geant/gap_ansible/roles/iptrunk/templates/nokia/trunk_interface.j2
+++ b/geant/gap_ansible/roles/iptrunk/templates/nokia/trunk_interface.j2
@@ -72,9 +72,9 @@
               <port-id>{{ member.interface_name }}</port-id>
           </port>
 {% endfor %}
-          {% if (common.minimum_links | int) > 1 %}
+          {% if (wfo_trunk.iptrunk.iptrunk_minimum_links | int) > 1 %}
           <port-threshold>
-            <value>{{ (common.minimum_links | int) - 1 }}</value>
+            <value>{{ (wfo_trunk.iptrunk.iptrunk_minimum_links | int) - 1 }}</value>
             <action>down</action>
           </port-threshold>
           {% endif %}
diff --git a/geant/gap_ansible/roles/iptrunk/vars/main.yml b/geant/gap_ansible/roles/iptrunk/vars/main.yml
index 43b5e3b3f993ba10223c270d9eb2d1af7cc7df22..f4df17e9ba7799c0babc793d0331b8c9ef543cba 100644
--- a/geant/gap_ansible/roles/iptrunk/vars/main.yml
+++ b/geant/gap_ansible/roles/iptrunk/vars/main.yml
@@ -33,7 +33,7 @@ mtu_phy: 9212
 mtu_ip: 9000
 icmp_ttl_expired:
   number: 2000
-  seconds: 5
+  seconds: 2
 
 trunks:
   - id: "{{ wfo_trunk.iptrunk.geant_s_sid }}"
@@ -41,10 +41,8 @@ trunks:
       common:
         description: "{{ wfo_trunk.iptrunk.iptrunk_description }}"
         speed: "{{ wfo_trunk.iptrunk.iptrunk_speed }}"
-        # is_leased_line: false ## Fix it to use iptrunk_type
         isis_metric: "{{ wfo_trunk.iptrunk.iptrunk_isis_metric }}"
-        # minimum_links: "{{ wfo_trunk.iptrunk.iptrunk_minimum_links }}"
-        minimum_links: "{{ wfo_trunk.iptrunk.iptrunk_sides[0].iptrunk_side_ae_members | length - 1 }}"
+        minimum_links: "{{ wfo_trunk.iptrunk.iptrunk_minimum_links }}"
         trunk_type: "{{ wfo_trunk.iptrunk.iptrunk_type }}"
       nodeA:
         name: "{{ wfo_trunk.iptrunk.iptrunk_sides[0].iptrunk_side_node.router_fqdn }}"
diff --git a/geant/gap_ansible/roles/iptrunk_checks/tasks/check_optical_levels.yaml b/geant/gap_ansible/roles/iptrunk_checks/tasks/check_optical_levels.yaml
index 87170921a40dd8c078adcd50b72f1c9bd46b7ac3..c8e2a5ebc57be8f4d885c40c9743789918e84d59 100644
--- a/geant/gap_ansible/roles/iptrunk_checks/tasks/check_optical_levels.yaml
+++ b/geant/gap_ansible/roles/iptrunk_checks/tasks/check_optical_levels.yaml
@@ -1,6 +1,9 @@
 ---
 - name: Get Junos attributes for optical levels of interface "{{ item }}"
-  when: local_side.iptrunk_side_node.vendor == "juniper"
+  when: >-
+      local_side.iptrunk_side_node.vendor == "juniper"
+      and
+      ae_member.interface_name is regex("^et-*")
   block:
     - name: Run Juniper Optical info
       junipernetworks.junos.junos_command:
diff --git a/geant/gap_ansible/roles/iptrunk_checks/tasks/main.yml b/geant/gap_ansible/roles/iptrunk_checks/tasks/main.yml
index af907bd0a14dd4ee85f1dae2cdb529c7c4047c6b..a27e38625602125e40af7ac91196ef5657b90d5d 100644
--- a/geant/gap_ansible/roles/iptrunk_checks/tasks/main.yml
+++ b/geant/gap_ansible/roles/iptrunk_checks/tasks/main.yml
@@ -152,5 +152,7 @@
   when: >-
     check == "optical_post"
     and
+    new_node is defined
+    and
     inventory_hostname != new_node.router.router_fqdn
   ansible.builtin.include_tasks: diff_optical_results.yaml
diff --git a/geant/gap_ansible/roles/iptrunk_migration/vars/main.yml b/geant/gap_ansible/roles/iptrunk_migration/vars/main.yml
index 2d8e5d8efaaabe4e5b3e9978fb136e43a2a1bc33..cedec3f78dca8a5538efc6621e0885f4d0cfff6e 100644
--- a/geant/gap_ansible/roles/iptrunk_migration/vars/main.yml
+++ b/geant/gap_ansible/roles/iptrunk_migration/vars/main.yml
@@ -21,7 +21,7 @@ mtu_phy: 9212
 mtu_ip: 9000
 icmp_ttl_expired:
   number: 2000
-  seconds: 5
+  seconds: 2
 
 wfo_trunk: "{{ wfo_trunk_json }}"
 config_object: "{{ object }}"