POMDPs.jl action(mdp,initial_state) doesnt return expected/correct action

Hi,
I’m doing: (s is initial state)

sim = RolloutSimulator()
r = simulate(sim, mdp, policy,s)

but the selected actions during simulate aren’t correct and don’t go by the POMDPs.actions functions that I implemented for my MDP. So simulate goes into an infinite loop unable to get to a terminal state. (Tried it with strepthrough too)
I’m unsure but it looks like simulate doesn’t use POMDPs.actions or actionsindex. As calling actions manually gives the correct action.

Should I just implement action() myself?

It seems like MCTSSolver works. I’m unsure why ValueIterationSolver didn’t work.