Set pref-src on ospf in ROS 7.12.1

i have established ospf beetween CCR1036 (ROS 6) and mikrotik x86 (ROS 7.12.1 | Level 1). everything normal except when i want to set pref-src on my route table using routing filter, it is not worked. i used pref-src on CCR2004 on BGP and it worked. i dont know why on ospf it didn’t.

this is the config on my x86.

routing/ospf/instance/print
Flags: X - disabled, I - inactive
0 name=“ospf1” version=2 vrf=main router-id=main
in-filter-chain=ospf-IN redistribute=connected

routing/filter/export

/routing filter rule
add chain=ospf-IN disabled=no rule=
“if(dst in 0.0.0.0/0){accept; set pref-src 10.10.100.1;}”

routing/ospf/interface-template/print

Flags: X - disabled, I - inactive
0 area=backbone interfaces=ether1 instance-id=0
networks=10.10.100.0/30 type=ptp retransmit-interval=5s
transmit-delay=1s hello-interval=10s dead-interval=40s priority=128 cost=1

ip route/print detail

Flags: D - dynamic; X - disabled, I - inactive, A - active;
c - connect, s - static, r - rip, b - bgp, o - ospf, i - is-is, d - dhcp, v - vp>
H - hw-offloaded; + - ecmp
0 As dst-address=0.0.0.0/0 routing-table=main pref-src=10.10.100.1
gateway=10.10.100.2
immediate-gw=10.10.100.2%ether1 distance=1
scope=30 target-scope=10 suppress-hw-offload=no

D o dst-address=0.0.0.0/0 routing-table=main
gateway=10.10.100.2%ether1
immediate-gw=10.10.100.2%ether1 distance=110
scope=20 target-scope=10 suppress-hw-offload=no

meanwhile i add static route to set the pref-src.

Have you tried to swap accept / set pref-src?

What happens if you invert accept and set prf-src in the rule?

/routing filter rule
add chain=ospf-IN disabled=no rule=\
"if(dst in 0.0.0.0/0){set pref-src 10.10.100.1; accept;}"

swaping the action order make it worked. thank you.