i have an extension in the dialplan\default.xml

        <extension name="test_lua" continue="false">
            <condition field="destination_number" expression="^(9\d{3})$">
                <action application="answer" />
                <action application="lua" data="test.lua" />
                <action application="sleep" data="1000" />
            </condition>
        </extension>

the test.lua is something like:

if session:ready() then
    freeswitch.consoleLog("info", "a leg is ready.\n" )
else
    freeswitch.consoleLog("info", "a leg is not ready.\n" )
end

this works fine and info "a leg is ready." will be shown on the console.

when im trying to swap the sequence of the dialplan as

                <action application="lua" data="test.lua" />
                <action application="answer" />

the freeswitch gets down, with a windows message box prompting to debug or close the program. (a bug?)
does this mean in a lua script, "session" is only available after "answer"?