<?xml version="1.0" encoding="utf-8"?>
  <testsuites>
  <testsuite name="logicmoo.pfc.test.sanity_base.MT_03A"  package="logicmoo.pfc.test.sanity_base" time="0.007" tests="1" errors="0" skipped="0" failures="0">

     <testcase name="logicmoo.pfc.test.sanity_base.MT_03A@Test_0039_Line_0000__CodeB_in_modB_in_myMt: myMt:module_clause(modB:codeB,Clause_Kw2)" classname="logicmoo.pfc.test.sanity_base.MT_03A" time="0.000">
  <system-err><![CDATA[name=Test_0039_Line_0000__CodeB_in_modB_in_myMt
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
 (cd /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base ; timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "['mt_03a.pl']")

```
%~ init_phase(after_load)
%~ init_phase(restore_state)
%
%~ init_why(after_boot,program)
%~ after_boot.
%~ Dont forget to ?- logicmoo_i_cyc_xform.
running('/var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl'),
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
%~ pfc_iri : include_module_file(myMt:library('pfclib/system_each_module.pfc'),myMt).
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
%~ baseKB : mpred_fwc1( genlMt(modA,modB)).
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ ?-( mpred_test( "Test_0001_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_22012))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0001_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0001_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0002_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_18082))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0002_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0002_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ ?-( mpred_test("Test_0003_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_33620)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0003_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0003_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ ?-( mpred_test("Test_0004_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0004_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0004_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ ?-( mpred_test("Test_0005_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0005_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0005_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_172904))])
39m
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,'<gt;garbage_collected>'). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a6b00),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a6b00),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a6b00)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a6b00),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a6b00),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a6b00))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(27)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m37m40m15m '$compile_term'((:-clause_u(modA:codeB,A)),B,'* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl '). 0m49m39m0m0m  %  init.pl:3074:
(28)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m37m40m15m '$compile_term'((:-clause_u(modA:codeB,A)),B,'* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',-). 0m49m39m0m0m  %  init.pl:3084:
(29)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m33m49m12m '$execute_directive'(clause_u(modA:codeB,A),'* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl '). 0m49m39m21m0m  %  init.pl:3549:
(30)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m93m49m13m '$execute_directive_2'(clause_u(modA:codeB,A),'* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl '). 0m49m0m0m0m  %  init.pl:3571:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(34)$0m2m94m49m16m[myMt]0m49m0m0m0m0m1m92m49m14m pfc_lib:log_failure(failed_mpred_test(clause_u(modA:codeB,A))). 0m49m0m21m0m  %  mpred_core.pl:4209:
(35)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(37)0m2m94m49m16m[myMt]0m49m0m0m0m0m1m92m49m14m pfc_lib:maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))). 0m49m0m21m0m  %  mpred_core.pl:4229:
(38)$0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(41)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m95m49m16m dumpst:dumpST. 0m49m0m0m0m  %  dumpst.pl:150:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:37
%~ ?-( mpred_test( "Test_0006_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_94532))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0006_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0006_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0007_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_222754))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0007_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0007_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:40
%~ ?-( mpred_test("Test_0008_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_11104)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0008_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0008_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ ?-( mpred_test("Test_0009_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0009_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0009_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ ?-( mpred_test("Test_0010_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0010_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0010_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_485666))])
39m
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:56
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7080),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a7080),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a7080)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7080),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a7080),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a7080))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(35)0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(38)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(43)0m2m94m49m11m[butterfly]0m49m0m0m0m0m2m94m49m16m butterfly:in_bfly(f,myMt:zotrace(with_all_dmsg((b_setval('$dump_frame',500),dumpST1)))). 0m49m0m0m0m  %  butterfly_console.pl:226:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ ?-( mpred_test( "Test_0011_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_92740))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0011_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0011_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0012_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_288042))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0012_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0012_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:40
%~ ?-( mpred_test("Test_0013_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_812652)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0013_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0013_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ ?-( mpred_test("Test_0014_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0014_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0014_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ ?-( mpred_test("Test_0015_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0015_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0015_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_533368))])
39m
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7f00),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a7f00),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a7f00)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7f00),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a7f00),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a7f00))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(35)0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(38)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(43)0m2m94m49m11m[butterfly]0m49m0m0m0m0m2m94m49m16m butterfly:in_bfly(f,myMt:zotrace(with_all_dmsg((b_setval('$dump_frame',500),dumpST1)))). 0m49m0m0m0m  %  butterfly_console.pl:226:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:56
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:23
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:37
%~ ?-( mpred_test( "Test_0016_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_93824))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0016_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0016_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0017_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_769084))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0017_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0017_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:40
%~ ?-( mpred_test("Test_0018_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_647528)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0018_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0018_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ ?-( mpred_test("Test_0019_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0019_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0019_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ ?-( mpred_test("Test_0020_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0020_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0020_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_677682))])
39m
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:56
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7a00),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a7a00),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a7a00)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7a00),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a7a00),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a7a00))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(35)0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(38)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(43)0m2m94m49m11m[butterfly]0m49m0m0m0m0m2m94m49m16m butterfly:in_bfly(f,myMt:zotrace(with_all_dmsg((b_setval('$dump_frame',500),dumpST1)))). 0m49m0m0m0m  %  butterfly_console.pl:226:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ ?-( mpred_test( "Test_0021_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_94182))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0021_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0021_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0022_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_995184))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0022_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0022_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ ?-( mpred_test("Test_0023_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_892830)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0023_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0023_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ ?-( mpred_test("Test_0024_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0024_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0024_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ ?-( mpred_test("Test_0025_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0025_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0025_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_827910))])
39m
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7780),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a7780),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a7780)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a7780),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a7780),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a7780))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(35)0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(38)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(43)0m2m94m49m11m[butterfly]0m49m0m0m0m0m2m94m49m16m butterfly:in_bfly(f,myMt:zotrace(with_all_dmsg((b_setval('$dump_frame',500),dumpST1)))). 0m49m0m0m0m  %  butterfly_console.pl:226:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ /var/lib/jenkins/.local/share/swi-prolog/pack/logicmoo_utils/prolog/logicmoo_test_header.pl:93
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ ?-( mpred_test( "Test_0026_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_95168))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0026_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0026_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0027_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_670606))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0027_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0027_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:40
%~ ?-( mpred_test("Test_0028_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_1820246)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0028_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0028_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ ?-( mpred_test("Test_0029_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0029_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0029_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:47
%~ ?-( mpred_test("Test_0030_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0030_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0030_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_1770534))])
39m
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a6500),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a6500),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a6500)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a6500),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a6500),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a6500))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(35)0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(38)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(43)0m2m94m49m11m[butterfly]0m49m0m0m0m0m2m94m49m16m butterfly:in_bfly(f,myMt:zotrace(with_all_dmsg((b_setval('$dump_frame',500),dumpST1)))). 0m49m0m0m0m  %  butterfly_console.pl:226:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:56
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ /var/lib/jenkins/.local/share/swi-prolog/pack/logicmoo_utils/prolog/logicmoo_test_header.pl:96
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ ?-( mpred_test( "Test_0031_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_95892))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0031_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0031_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0032_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_1451708))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0032_Line_0000__naf_CodeB_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0032_Line_0000_naf_CodeB_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modA:codeA,_)).
/*~
%~ ?-( mpred_test("Test_0033_Line_0000__CodeA_in_modA_in_myMt",myMt:module_clause(modA:codeA,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modA:codeA,(printAll('$current_source_module'(_1202734)),codeB))))
no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

no_proof_for(module_clause(modA:codeA,(printAll($current_source_module(Module)),codeB))).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0033_Line_0000__CodeA_in_modA_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0033_Line_0000_CodeA_in_modA_in_myMt-junit.xml
~*/

:- sanity( module_clause(modB:codeB,_)).

% before test, genlMt makes the rule available and should not corrupt the modA module
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:41
%~ ?-( mpred_test("Test_0034_Line_0000__CodeB_in_modB_in_myMt",myMt:module_clause(modB:codeB,Clause_Kw))).
passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0034_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0034_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/

% before test, genlMt makes the rule available and should not corrupt the modA module
:- warn_fail_TODO(clause_u(modA:codeB,_)).

% make sure genlMt didnt unassert
/*~
%~ :-( warn_fail_TODO( clause_u(modA:codeB,Kw))).
~*/

% make sure genlMt didnt unassert
:- sanity(clause_u(modB:codeB,_)).


% run the test
/*~
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:47
%~ ?-( mpred_test("Test_0035_Line_0000__CodeB_in_modB_in_myMt",myMt:clause_u(modB:codeB,Kw))).
passed=info(why_was_true(myMt:clause_u(modB:codeB,true)))
no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

no_proof_for(clause_u(modB:codeB,true)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0035_Line_0000__CodeB_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0035_Line_0000_CodeB_in_modB_in_myMt-junit.xml
~*/



% run the test
modA: (:- codeA).

% to make codeB sure  is available in modA
/*~
No source location!?
~*/


% to make codeB sure  is available in modA
:- mpred_must( clause_u(modA:codeB,_)).

% to make sure codeA does not get accdently defined in modB
/*~
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure+failed_mpred_test(clause_u(modA:codeB,_853448))])
39m
%~ failed_mpred_test( clause_u(modA:codeB,Kw))
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ FIlE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
(0)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(1)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m1m33m49m13m '$toplevel'. 0m49m39m21m0m  %  toplevel.pl:701:
(2)$0m1m33m49m13m[$toplevel]0m49m39m21m0m0m0m36m49m16m '$runtoplevel'. 0m49m39m0m0m  %  toplevel.pl:713:
(10)$0m2m94m49m14m[system]0m49m0m0m0m0m1m91m49m16m '$load_file'('mt_03a.pl',user,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:2353:
(13)$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$sig_atomic'(setup_call_cleanup(with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a6c80),[expand(false),expand(true)])),'$mt_do_load'(<gt;clause>(0x55e71b6a6c80),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),'$mt_end_load'(<gt;clause>(0x55e71b6a6c80)))). 0m49m0m21m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(14)$0m2m94m49m14m[system]0m49m0m0m0m0m0m97m40m13m '$c_call_prolog'. 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(16)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:with_mutex('$load_file','$mt_start_load'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',<gt;clause>(0x55e71b6a6c80),[expand(false),expand(true)])),system:'$mt_do_load'(<gt;clause>(0x55e71b6a6c80),'mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]),A,system:'$mt_end_load'(<gt;clause>(0x55e71b6a6c80))). 0m49m0m0m0m  %  init.pl:646:
(18)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m92m49m10m '$qdo_load_file'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2546:
(21)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m0m96m49m12m '$do_load_file_2'('mt_03a.pl','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',user,compiled,[expand(false),expand(true)]). 0m49m0m0m0m  %  init.pl:2592:
(25)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m setup_call_catcher_cleanup(system:'$start_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',1632225607.2610815),system:'$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]),B,system:'$end_consult'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',lexstate(202,swi),user)). 0m49m0m0m0m  %  init.pl:646:
(26)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m91m49m16m '$load_file'('* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ','* https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl ',A,[expand(false),expand(true)]). 0m49m0m21m0m  %  init.pl:3007:
(31)<gt;*>$0m2m94m49m14m[system]0m49m0m0m0m#0m1m93m49m10m '$execute_directive_3'(clause_u(modA:codeB,A)). 0m49m0m21m0m  %  init.pl:3574:
(32)$0m2m94m49m14m[system]0m49m0m0m0m#0m2m94m49m14m catch(myMt:clause_u(modA:codeB,A),error(B,C),system:'$exception_in_directive'(error(B,C))). 0m49m0m0m0m  %  init.pl:546:
(33)0m2m94m49m16m[myMt]0m49m0m0m0m#0m1m92m49m14m pfc_lib:clause_u(modA:codeB,A). 0m49m0m21m0m  %  mpred_core.pl:4331:
(35)0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(36)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_lines(red,failure+failed_mpred_test(clause_u(modA:codeB,A))),maybe_mpred_break(failed_mpred_test(clause_u(modA:codeB,A))),log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(38)0m2m94m49m16m[myMt]0m49m0m0m0m0m0m91m49m10m pfc_lib:break_ex. 0m49m0m0m0m  %  mpred_core.pl:4226:
(39)$0m2m94m49m17m[rtrace]0m49m0m0m0m0m2m94m49m16m rtrace:quietly(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m  %  rtrace.pl:217:
(40)$0m2m94m49m16m[myMt]0m49m0m0m0m0m2m94m49m16m '<gt;meta-call>'(myMt:(log_failure_red,dumpST,log_failure_red)). 0m49m0m0m0m0m2m97m40m16m no(clause) 0m49m0m0m0m
(43)0m2m94m49m11m[butterfly]0m49m0m0m0m0m2m94m49m16m butterfly:in_bfly(f,myMt:zotrace(with_all_dmsg((b_setval('$dump_frame',500),dumpST1)))). 0m49m0m0m0m  %  butterfly_console.pl:226:
%~ FILE: * https://logicmoo.org:2082/gitlab/logicmoo/logicmoo_workspace/-/edit/master/packs_sys/pfc/t/sanity_base/mt_03a.pl#L56 
31msmart_format("%%%%%%%%%%%%%%%%%%%%%%%%%%% (~w) ~w %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n",[red,failure])
39m
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:56
%~ DUMP_BREAK/0
%~ message_hook(unhandled_exception(abort),error,['Unhandled exception: ','~p'-[abort]])
Unhandled exception: abort
ERROR: Unhandled exception: abort
~*/
/*~
~*/
/* <gt;module>
%
%  PFC is codeA language extension for prolog.
%
%  It adds codeA new type of module inheritance
%
% Dec 13, 2035
% Douglas Miles
*/
%  was_module(header_sane,[]).

:- include(library(logicmoo_test_header)).

%:- add_import_module(header_sane,baseKB,end).

/*~
running(-),
%~ reload_of_test_header.
%~ %~ Reset DB complete for myMt
%~ %~ Reset DB complete for myMt
%~ this_test_might_need( :-( expects_dialect(pfc)))
%~ this_test_might_need( :-( use_module( library(logicmoo_plarkc))))
~*/


%:- add_import_module(header_sane,baseKB,end).

:- set_defaultAssertMt(myMt).

/*~
~*/

:- expects_dialect(pfc).

/*~
~*/

:- mpred_trace_exec.

/*~
~*/

mtHybrid(modA).
/*~
No source location!?
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:23
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtHybrid/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtHybrid/1]])
No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtHybrid/1)'
~*/

mtProlog(modB).


/*~
No source location!?
%~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/mt_03a.pl:24
%~ message_hook(
%~    error(
%~       permission_error(redefine,imported_procedure,baseKB:mtProlog/1),
%~       context(system:'$record_clause'/3,Context_Kw)),
%~    error,
%~    [ 'No permission to ~w ~w `~p\'' - [ redefine,
%~                                         imported_procedure,
%~                                         baseKB : mtProlog/1]])
No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
ERROR: No permission to redefine imported_procedure `baseKB:(mtProlog/1)'
~*/



modA: (codeA:- printAll('$current_source_module'(_M)),codeB).

/*~
No source location!?
~*/

modB: (codeB).

%:- \+ modA:codeA.

/*~
No source location!?
~*/

%:- \+ modA:codeA.

genlMt(modA,modB).

% before test, to make sure codeA was not accdently defined in modB
/*~
~*/

% before test, to make sure codeA was not accdently defined in modB
:- sanity(\+ module_clause(modB:codeA,_)).
/*~
%~ ?-( mpred_test( "Test_0036_Line_0000__naf_CodeA_in_modB_in_myMt",
%~       myMt : \+( module_clause(modB:codeA,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modB:codeA,_1096820))))
no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

no_proof_for(\+module_clause(modB:codeA,Clause_Kw2)).

name='logicmoo.pfc.test.sanity_base.MT_03A-Test_0036_Line_0000__naf_CodeA_in_modB_in_myMt'.
JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.MT_03A'.
JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'mt_03a.pl\']"'.
% saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_MT_03A_Test_0036_Line_0000_naf_CodeA_in_modB_in_myMt-junit.xml
~*/

:- sanity(\+ module_clause(modA:codeB,_)).

/*~
%~ ?-( mpred_test( "Test_0037_Line_0000__naf_CodeB_in_modA_in_myMt",
%~       myMt : \+( module_clause(modA:codeB,Clause_Kw)))).
passed=info(why_was_true(myMt:(\+module_clause(modA:codeB,_1217584))))
no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause_Kw2)).

no_proof_for(\+module_clause(modA:codeB,Clause
goal=myMt:module_clause(modB:codeB,_964516).
time=0.00012254714965820312.
passed=passed=info(why_was_true(myMt:module_clause(modB:codeB,true)))
no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

no_proof_for(module_clause(modB:codeB,true)).

result=passed.
]]></system-err>
    </testcase>
  </testsuite>
 </testsuites>