ApiLogicServer 15.1.2__py3-none-any.whl → 15.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (619) hide show
  1. api_logic_server_cli/api_logic_server.py +20 -16
  2. api_logic_server_cli/api_logic_server_info.yaml +3 -3
  3. api_logic_server_cli/cli.py +17 -2
  4. api_logic_server_cli/create_from_model/dbml.py +1 -1
  5. api_logic_server_cli/genai/genai.py +39 -28
  6. api_logic_server_cli/genai/genai_react_app.py +23 -1
  7. api_logic_server_cli/genai/genai_svcs.py +5 -3
  8. api_logic_server_cli/prototypes/base/.github/.copilot-instructions.md +164 -4
  9. api_logic_server_cli/prototypes/{manager/samples/basic_demo/.github/.copilot-instructions.md → base/.github/.copilot-instructionsZ.mdx} +84 -4
  10. api_logic_server_cli/prototypes/base/.vscode/launch.json +1 -1
  11. api_logic_server_cli/prototypes/base/api/system/api_utils.py +7 -3
  12. api_logic_server_cli/prototypes/base/config/config.py +1 -1
  13. api_logic_server_cli/prototypes/base/docs/training/readme_training.md +3 -0
  14. api_logic_server_cli/prototypes/base/docs/training/testing.md +779 -0
  15. api_logic_server_cli/prototypes/base/logic/declare_logic.py +4 -2
  16. api_logic_server_cli/prototypes/base/logic/logic_discovery/use_case.py +2 -0
  17. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/AI-Generated-Tests-from-Rules.md +559 -0
  18. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/behave_logic_report.py +46 -17
  19. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/check_step_order.py +120 -0
  20. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/features/steps/test_data_helpers.py +242 -0
  21. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/features/steps/test_utils.py +5 -1
  22. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/reports/Behave Logic Report Intro micro.md +15 -0
  23. api_logic_server_cli/prototypes/base/test/api_logic_server_behave/reports/Behave Logic Report Intro.md +10 -66
  24. api_logic_server_cli/prototypes/base/test/readme_test.md +72 -4
  25. api_logic_server_cli/prototypes/basic_demo/iteration/api/api_discovery/order_b2b.py +22 -18
  26. api_logic_server_cli/prototypes/basic_demo/ui/my-react-app-cards/README.md +3 -1
  27. api_logic_server_cli/prototypes/manager/.github/.copilot-instructions.md +30 -9
  28. api_logic_server_cli/prototypes/manager/.github/sync-to-dev-src.sh +42 -0
  29. api_logic_server_cli/prototypes/manager/.vscode/launch.json +30 -30
  30. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/.github/.copilot-instructions.md +741 -0
  31. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/docs/db.dbml +43 -0
  32. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/docs/training/readme_training.md +3 -0
  33. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/docs/training/testing.md +593 -0
  34. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/AI-Generated-Tests-from-Rules.md +554 -0
  35. api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/behave_logic_report.py +35 -9
  36. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/features/order_processing.feature +72 -0
  37. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/features/steps/about_steps.py +16 -0
  38. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/features/steps/order_processing_steps.py +553 -0
  39. api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/features/steps/test_utils.py +5 -1
  40. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/behave.log +79 -0
  41. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Add_Item_Exceeding_Credit.log +8 -0
  42. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Assign_Product_to_Item.log +26 -0
  43. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/B2B_Order_-_10_Gadget.log +46 -0
  44. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/B2B_Order_-_10_carbon_neu.log +41 -0
  45. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/B2B_Order_-_1_Green.log +42 -0
  46. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/B2B_Order_-_5_Widget.log +42 -0
  47. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/B2B_Order_Placement.log +2 -0
  48. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Balance_Check.log +2 -0
  49. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Carbon_Neutral_B2B_Order.log +52 -0
  50. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Carbon_Neutral_Discount_A.log +42 -0
  51. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Change_Item_Product.log +25 -0
  52. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Change_Item_Product_to_Ga.log +25 -0
  53. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Change_Order_Customer_Adj.log +19 -0
  54. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Change_Order_Customer_to_.log +19 -0
  55. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Change_Product_Updates_Un.log +25 -0
  56. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Multi-Item_Order.log +79 -0
  57. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Order_for_Constrai.log +2 -0
  58. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Order_for_FK_Chang.log +55 -0
  59. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Order_for_Shipping.log +55 -0
  60. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Shipped_Order.log +54 -0
  61. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Test_Customer.log +13 -0
  62. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Create_Test_Order.log +55 -0
  63. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Credit_Limit_Constraint_T.log +2 -0
  64. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Customer_Change.log +20 -0
  65. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Delete_First_Item.log +20 -0
  66. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Delete_Item_Reduces_Order.log +20 -0
  67. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Exceed_Credit_Limit_Rejec.log +46 -0
  68. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Good_Order_Placed_via_B2B.log +42 -0
  69. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Item_Deletion.log +20 -0
  70. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Item_Quantity_Update.log +23 -0
  71. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Item_Quantity_Update_Reca.log +23 -0
  72. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Item_Quantity_Update_to_1.log +23 -0
  73. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Order_Customer_Change.log +19 -0
  74. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Order_Shipping.log +19 -0
  75. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Order_Unshipping.log +19 -0
  76. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Product_Change.log +26 -0
  77. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Product_Unit_Price_Copied.log +42 -0
  78. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Diana_for_Constrain.log +53 -0
  79. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Item_for_Product_Ch.log +53 -0
  80. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Item_for_Unit_Price.log +30 -0
  81. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_10_Widget.log +41 -0
  82. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_2_Gadget.log +41 -0
  83. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_2_Widget.log +42 -0
  84. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_3_Widget_+_.log +57 -0
  85. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_3_Widget_an.log +12 -0
  86. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_5_Gadget.log +56 -0
  87. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_-_5_Widget.log +41 -0
  88. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_for_Alice.log +53 -0
  89. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Order_for_Bob.log +53 -0
  90. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Shipped_Order.log +52 -0
  91. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Setup_Unshipped_Order.log +53 -0
  92. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Ship_Order.log +18 -0
  93. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Ship_Order_Excludes_from_.log +18 -0
  94. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/System_Ready.log +3 -0
  95. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Test_Order_Setup_-_1_Item.log +53 -0
  96. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Test_Order_Setup_-_2_Item.log +76 -0
  97. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Transaction_Processing.log +19 -0
  98. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Unship_Order.log +18 -0
  99. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Unship_Order_Includes_in_.log +18 -0
  100. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Verify_Charlie_Balance.log +1 -0
  101. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Verify_Customer_Balance.log +11 -0
  102. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Verify_Diana_Balance.log +11 -0
  103. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Verify_Item_Amount.log +1 -0
  104. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Verify_Order_Total.log +1 -0
  105. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/logs/scenario_logic_logs/Verify_Unit_Price_Copy.log +1 -0
  106. api_logic_server_cli/prototypes/manager/samples/basic_demo_sample/test/api_logic_server_behave/reports/Behave Logic Report.md +303 -0
  107. api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/readme_test.md +72 -4
  108. api_logic_server_cli/prototypes/manager/samples/readme_samples.md +1 -1
  109. api_logic_server_cli/prototypes/manager/system/ApiLogicServer-Internal-Dev/copilot-dev-context.md +150 -0
  110. api_logic_server_cli/prototypes/manager/system/genai/prompt_inserts/sqlite_inserts_model_test_hints_with_relns.prompt +94 -0
  111. api_logic_server_cli/prototypes/nw/test/readme_test_nw.md +333 -92
  112. apilogicserver-15.2.0.dist-info/METADATA +506 -0
  113. {apilogicserver-15.1.2.dist-info → apilogicserver-15.2.0.dist-info}/RECORD +615 -535
  114. api_logic_server_cli/prototypes/manager/samples/basic_demo/docs/db.dbml +0 -14
  115. api_logic_server_cli/prototypes/manager/samples/basic_demo/test/api_logic_server_behave/features/steps/about.py +0 -20
  116. api_logic_server_cli/prototypes/manager/samples/basic_demo/test/api_logic_server_behave/logs/behave.log +0 -0
  117. apilogicserver-15.1.2.dist-info/METADATA +0 -169
  118. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.devcontainer-option/For_VSCode.dockerfile +0 -0
  119. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.devcontainer-option/devcontainer.json +0 -0
  120. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.devcontainer-option/readme.md +0 -0
  121. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.devcontainer-option/setup.sh +0 -0
  122. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.env +0 -0
  123. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.gitignore +0 -0
  124. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.idea/runConfigurations/ApiLogicServer.xml +0 -0
  125. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.idea/runConfigurations/Report_Behave_Logic.xml +0 -0
  126. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.idea/runConfigurations/Run_Behave.xml +0 -0
  127. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.idea/runConfigurations/Windows_Run_Behave.xml +0 -0
  128. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.idea/runConfigurations/run___No_Security.xml +0 -0
  129. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.idea/runConfigurations/run_docker.xml +0 -0
  130. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.vscode/launch.json +0 -0
  131. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.vscode/settings.json +0 -0
  132. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/.vscode/venv_init.sh +0 -0
  133. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/_config.yml +0 -0
  134. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/_layouts/redirect.html +0 -0
  135. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/__init__.py +0 -0
  136. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/auto_discovery.py +0 -0
  137. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/mcp_discovery.py +0 -0
  138. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/mcp_expose_api_models.py +0 -0
  139. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/new_service.py +0 -0
  140. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/newer_service.py +0 -0
  141. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/ontimize_api.py +0 -0
  142. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/order_b2b_service.py +0 -0
  143. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/api_discovery/system.py +0 -0
  144. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/customize_api.py +0 -0
  145. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/expose_api_models.py +0 -0
  146. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/json_encoder.py +0 -0
  147. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/readme_customize_api.md +0 -0
  148. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/api_utils.py +0 -0
  149. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/custom_endpoint.py +0 -0
  150. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/expression_parser.py +0 -0
  151. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/gen_csv_report.py +0 -0
  152. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/gen_pdf_report.py +0 -0
  153. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/opt_locking/opt_locking.py +0 -0
  154. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api/system/opt_locking/readme.md +0 -0
  155. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/api_logic_server_run.py +0 -0
  156. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/__init__.py +0 -0
  157. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/activate_logicbank.py +0 -0
  158. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/config.py +0 -0
  159. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/default.env +0 -0
  160. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/logging-reduced.yml +0 -0
  161. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/logging.yml +0 -0
  162. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/mypy.ini +0 -0
  163. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/config/server_setup.py +0 -0
  164. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/api/api_discovery/openapi.py +0 -0
  165. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/config/default.env +0 -0
  166. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/database/db.sqlite +0 -0
  167. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/database/models.py +0 -0
  168. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/docs/mcp_learning/mcp_discovery.json +0 -0
  169. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/logic/cocktail-napkin.jpg +0 -0
  170. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/logic/declare_logic.py +0 -0
  171. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/logic/logic_discovery/email_request.py +0 -0
  172. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/logic/logic_discovery/simple_constraints.py +0 -0
  173. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/security/declare_security.py +0 -0
  174. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/admin/admin.yaml +0 -0
  175. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/admin/home.js +0 -0
  176. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/README.md +0 -0
  177. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/README_create_react_app.md +0 -0
  178. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/package-lock.json +0 -0
  179. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/package.json +0 -0
  180. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/public/favicon.ico +0 -0
  181. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/public/index.html +0 -0
  182. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/public/logo192.png +0 -0
  183. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/public/logo512.png +0 -0
  184. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/public/manifest.json +0 -0
  185. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/public/robots.txt +0 -0
  186. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/App.css +0 -0
  187. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/App.js +0 -0
  188. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/App.test.js +0 -0
  189. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Config-reference.js +0 -0
  190. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Config.js +0 -0
  191. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Customer-reference.js +0 -0
  192. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Customer.js +0 -0
  193. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Item.js +0 -0
  194. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Order.js +0 -0
  195. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/Product.js +0 -0
  196. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/SysEmail.js +0 -0
  197. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/SysMcp.js +0 -0
  198. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/app_loader.js +0 -0
  199. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/index.css +0 -0
  200. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/index.js +0 -0
  201. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/logo.svg +0 -0
  202. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/.eslintrc +0 -0
  203. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/.yarnrc.yml +0 -0
  204. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/default-settings.js +0 -0
  205. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/default-settings.ts +0 -0
  206. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/errors.js +0 -0
  207. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/errors.ts +0 -0
  208. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/index.test.tsx +0 -0
  209. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/index.tsx +0 -0
  210. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/ra-jsonapi-client.js +0 -0
  211. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/ra-jsonapi-client.ts +0 -0
  212. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/resourceLookup.js +0 -0
  213. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/resourceLookup.ts +0 -0
  214. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/rav4-jsonapi-client/styles.module.css +0 -0
  215. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/reportWebVitals.js +0 -0
  216. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/customizations/ui/reference_react_app/src/setupTests.js +0 -0
  217. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/__init__.py +0 -0
  218. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic/alembic_run.py +0 -0
  219. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic/env.py +0 -0
  220. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic/readme_alembic.md +0 -0
  221. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic/script.py.mako +0 -0
  222. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic/versions/ae6a5c2fdc47_autogenerated.py +0 -0
  223. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic/versions/readme.md +0 -0
  224. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/alembic.ini +0 -0
  225. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/authentication_db.sqlite +0 -0
  226. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/bind_dbs.py +0 -0
  227. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/customize_models.py +0 -0
  228. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/database_discovery/authentication_models.py +0 -0
  229. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/database_discovery/auto_discovery.py +0 -0
  230. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/db.sqlite +0 -0
  231. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/db_debug/db_debug.py +0 -0
  232. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/mcp_db.sqlite +0 -0
  233. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/mcp_models.py +0 -0
  234. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/models.py +0 -0
  235. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/system/SAFRSBaseX.py +0 -0
  236. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/test_data/alp_init.py +0 -0
  237. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/test_data/readme.md +0 -0
  238. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/test_data/response2code.py +0 -0
  239. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/database/test_data/test_data_preamble.py +0 -0
  240. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/auth-db/authdb_mysql.Dockerfile +0 -0
  241. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/auth-db/authdb_mysql.sql +0 -0
  242. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/auth-db/authdb_postgres.sql +0 -0
  243. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-compose-dev-azure/azure-deploy.sh +0 -0
  244. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-compose-dev-local/docker-compose-dev-local.yml +0 -0
  245. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-compose-dev-local/docker-compose.sh +0 -0
  246. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-image/build_image.dockerfile +0 -0
  247. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-image/build_image.sh +0 -0
  248. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-image/env.list +0 -0
  249. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-image/run_image.sh +0 -0
  250. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-standard-image/docker-compose-standard-image.yml +0 -0
  251. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/docker-standard-image/env.list +0 -0
  252. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/h2/keycloakdb.mv.db +0 -0
  253. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/h2/keycloakdb.trace.db +0 -0
  254. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/import/kcals-realm.json +0 -0
  255. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/import/kcals-users-0.json +0 -0
  256. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/import/master-realm.json +0 -0
  257. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/import/master-users-0.json +0 -0
  258. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/data/tmp/kc-gzip-cache/nnbna/js/keycloak.js.gz +0 -0
  259. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/docker-compose-dev-network.yml +0 -0
  260. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/docker-compose-nginx.yml +0 -0
  261. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/docker-compose.yml +0 -0
  262. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/import/kcals-realm.json +0 -0
  263. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/import/kcals-users-0.json +0 -0
  264. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/import/master-realm.json +0 -0
  265. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/import/master-users-0.json +0 -0
  266. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/nginx/cert.pem +0 -0
  267. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/nginx/key.pem +0 -0
  268. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/nginx/nginx.conf +0 -0
  269. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/startup_log_nginx.txt +0 -0
  270. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/startup_log_no_nginx.txt +0 -0
  271. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/unused/auth_provider.py +0 -0
  272. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/keycloak/unused/unused-docker-compose-keycloak.sh +0 -0
  273. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/python-anywhere/python_anywhere_wsgi.py +0 -0
  274. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/devops/readme-devops.md +0 -0
  275. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/graphics/readme.md +0 -0
  276. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/logic/readme.md +0 -0
  277. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/logic_suggestions/readme_logic_suggestions.md +0 -0
  278. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/mcp_learning/mcp.prompt +0 -0
  279. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/mcp_learning/mcp_schema.json +0 -0
  280. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/models-not-code.png +0 -0
  281. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/runtime engines.png +0 -0
  282. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/system-creation-vibe.md +0 -0
  283. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/admin_app_1_context.prompt.md +0 -0
  284. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/admin_app_2_functionality.prompt.md +0 -0
  285. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/admin_app_3_architecture.prompt.md +0 -0
  286. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/logic_bank_api.prompt +0 -0
  287. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/logic_example.py +0 -0
  288. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/react_map.prompt.md +0 -0
  289. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/docs/training/react_tree.prompt.md +0 -0
  290. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/kafka/kafka_consumer.py +0 -0
  291. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/kafka/kafka_producer.py +0 -0
  292. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/kafka/kafka_readme.md +0 -0
  293. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/examples/mcp_context_results.txt +0 -0
  294. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/examples/mcp_discovery_response.json +0 -0
  295. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/examples/mcp_request.prompt +0 -0
  296. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/examples/mcp_schema.txt +0 -0
  297. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/examples/mcp_tool_context_response.json +0 -0
  298. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/examples/mcp_tool_context_response_get.json +0 -0
  299. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/mcp_client_executor.py +0 -0
  300. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/mcp_server_discovery.json +0 -0
  301. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/mcp/readme-mcp.md +0 -0
  302. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/n8n/N8N_WebHook_from_ApiLogicServer.json +0 -0
  303. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/n8n/n8n_producer.py +0 -0
  304. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/n8n/n8n_readme.md +0 -0
  305. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/row_dict_maps/OrderB2BMapper.py +0 -0
  306. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/row_dict_maps/row_dict_maps_readme.md +0 -0
  307. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/system/FlaskKafka.py +0 -0
  308. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/integration/system/RowDictMapper.py +0 -0
  309. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/api/api_discovery/order_b2b.py +0 -0
  310. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/database/db.sqlite +0 -0
  311. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/docs/er_diagram.png +0 -0
  312. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/integration/row_dict_maps/OrderB2B.py +0 -0
  313. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/integration/row_dict_maps/OrderShipping.py +0 -0
  314. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/logic/declare_logic.py +0 -0
  315. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/iteration/ui/admin/admin.yaml +0 -0
  316. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/declarative-vs-procedural-comparison.html +0 -0
  317. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/declare_logic.py +0 -0
  318. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/load_verify_rules.py +0 -0
  319. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/logic_discovery/app_integration.py +0 -0
  320. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/logic_discovery/auto_discovery.py +0 -0
  321. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/logic_discovery/check_credit.py +0 -0
  322. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/logic_discovery/mcp_client_executor_request.py +0 -0
  323. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/logic_discovery/readme_logic_discovery.md +0 -0
  324. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/logic_discovery/use_case.py +0 -0
  325. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/procedural/credit_service.py +0 -0
  326. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/procedural/declarative-vs-procedural-comparison.md +0 -0
  327. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/procedural/declarative-vs-procedural-comparison.png +0 -0
  328. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/logic/readme_logic.md +0 -0
  329. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/readme.md +0 -0
  330. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/readme_project.md +0 -0
  331. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/readme_standard.md +0 -0
  332. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/readme_vibe.md +0 -0
  333. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/requirements.txt +0 -0
  334. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/run.ps1 +0 -0
  335. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/run.sh +0 -0
  336. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/__init__.py +0 -0
  337. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/authentication_provider/__init__.py +0 -0
  338. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/authentication_provider/abstract_authentication_provider.py +0 -0
  339. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/authentication_provider/keycloak/auth_provider.py +0 -0
  340. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/authentication_provider/memory/auth_provider.py +0 -0
  341. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/authentication_provider/memory/auth_provider_no_swagger.py +0 -0
  342. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/authentication_provider/sql/auth_provider.py +0 -0
  343. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/declare_security.py +0 -0
  344. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/readme_security.md +0 -0
  345. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/system/authentication.py +0 -0
  346. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/system/authorization.py +0 -0
  347. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/security/system/custom_swagger.json +0 -0
  348. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/__init__.py +0 -0
  349. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/__init__.py +0 -0
  350. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/behave_run.py +0 -0
  351. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/features/about.feature +0 -0
  352. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/reports/Behave Logic Report Intro micro.md +0 -0
  353. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/reports/Behave Logic Report Intro.md +0 -0
  354. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/api_logic_server_behave/reports/Behave Logic Report Sample.md +0 -0
  355. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/test/basic/server_test.py +0 -0
  356. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/__init__.py +0 -0
  357. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/admin/admin.yaml +0 -0
  358. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/admin/admin_loader.py +0 -0
  359. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/admin/authentication_admin.yaml +0 -0
  360. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/admin/home.js +0 -0
  361. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/admin/mcp_admin.yaml +0 -0
  362. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/.browserslistrc +0 -0
  363. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/.dockerignore +0 -0
  364. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/.editorconfig +0 -0
  365. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/.eslintrc.json +0 -0
  366. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/.gitignore +0 -0
  367. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/README.md +0 -0
  368. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/angular.json +0 -0
  369. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/app_model.yaml +0 -0
  370. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/docker-compose-ontimize.yml +0 -0
  371. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/e2e/protractor.conf.js +0 -0
  372. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/e2e/src/app.e2e-spec.ts +0 -0
  373. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/e2e/src/app.po.ts +0 -0
  374. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/e2e/tsconfig.json +0 -0
  375. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/karma.conf.js +0 -0
  376. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/nginx/nginx.conf +0 -0
  377. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/ngsw-config.json +0 -0
  378. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/package-lock.json +0 -0
  379. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/package.json +0 -0
  380. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app-routing.module.ts +0 -0
  381. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app.component.html +0 -0
  382. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app.component.scss +0 -0
  383. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app.component.spec.ts +0 -0
  384. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app.component.ts +0 -0
  385. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app.config.ts +0 -0
  386. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/app.module.ts +0 -0
  387. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/login/login-routing.module.ts +0 -0
  388. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/login/login.component.html +0 -0
  389. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/login/login.component.scss +0 -0
  390. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/login/login.component.ts +0 -0
  391. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/login/login.module.ts +0 -0
  392. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/login/login.theme.scss +0 -0
  393. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/Customer-routing.module.ts +0 -0
  394. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/Customer.module.ts +0 -0
  395. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/detail/Customer-detail.component.html +0 -0
  396. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/detail/Customer-detail.component.scss +0 -0
  397. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/detail/Customer-detail.component.ts +0 -0
  398. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/home/Customer-home.component.html +0 -0
  399. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/home/Customer-home.component.scss +0 -0
  400. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/home/Customer-home.component.ts +0 -0
  401. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/new/Customer-new.component.html +0 -0
  402. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/new/Customer-new.component.scss +0 -0
  403. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Customer/new/Customer-new.component.ts +0 -0
  404. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/Item-routing.module.ts +0 -0
  405. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/Item.module.ts +0 -0
  406. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/detail/Item-detail.component.html +0 -0
  407. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/detail/Item-detail.component.scss +0 -0
  408. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/detail/Item-detail.component.ts +0 -0
  409. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/home/Item-home.component.html +0 -0
  410. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/home/Item-home.component.scss +0 -0
  411. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/home/Item-home.component.ts +0 -0
  412. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/new/Item-new.component.html +0 -0
  413. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/new/Item-new.component.scss +0 -0
  414. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Item/new/Item-new.component.ts +0 -0
  415. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/Order-routing.module.ts +0 -0
  416. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/Order.module.ts +0 -0
  417. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/detail/Order-detail.component.html +0 -0
  418. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/detail/Order-detail.component.scss +0 -0
  419. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/detail/Order-detail.component.ts +0 -0
  420. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/home/Order-home.component.html +0 -0
  421. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/home/Order-home.component.scss +0 -0
  422. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/home/Order-home.component.ts +0 -0
  423. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/new/Order-new.component.html +0 -0
  424. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/new/Order-new.component.scss +0 -0
  425. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Order/new/Order-new.component.ts +0 -0
  426. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/Product-routing.module.ts +0 -0
  427. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/Product.module.ts +0 -0
  428. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/detail/Product-detail.component.html +0 -0
  429. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/detail/Product-detail.component.scss +0 -0
  430. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/detail/Product-detail.component.ts +0 -0
  431. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/home/Product-home.component.html +0 -0
  432. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/home/Product-home.component.scss +0 -0
  433. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/home/Product-home.component.ts +0 -0
  434. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/new/Product-new.component.html +0 -0
  435. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/new/Product-new.component.scss +0 -0
  436. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/Product/new/Product-new.component.ts +0 -0
  437. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/about/about-routing.module.ts +0 -0
  438. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/about/about.component.html +0 -0
  439. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/about/about.component.scss +0 -0
  440. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/about/about.component.ts +0 -0
  441. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/about/about.module.ts +0 -0
  442. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/about/about.theme.scss +0 -0
  443. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/home/home-routing.module.ts +0 -0
  444. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/home/home.component.html +0 -0
  445. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/home/home.component.scss +0 -0
  446. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/home/home.component.ts +0 -0
  447. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/home/home.module.ts +0 -0
  448. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/main-routing.module.ts +0 -0
  449. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/main-theme.scss +0 -0
  450. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/main.component.html +0 -0
  451. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/main.component.scss +0 -0
  452. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/main.component.ts +0 -0
  453. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/main.module.ts +0 -0
  454. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/settings/settings-routing.module.ts +0 -0
  455. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/settings/settings.component.html +0 -0
  456. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/settings/settings.component.scss +0 -0
  457. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/settings/settings.component.ts +0 -0
  458. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/main/settings/settings.module.ts +0 -0
  459. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Customer-card/Customer-card.component.html +0 -0
  460. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Customer-card/Customer-card.component.scss +0 -0
  461. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Customer-card/Customer-card.component.ts +0 -0
  462. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Item-card/Item-card.component.html +0 -0
  463. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Item-card/Item-card.component.scss +0 -0
  464. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Item-card/Item-card.component.ts +0 -0
  465. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Order-card/Order-card.component.html +0 -0
  466. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Order-card/Order-card.component.scss +0 -0
  467. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Order-card/Order-card.component.ts +0 -0
  468. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Product-card/Product-card.component.html +0 -0
  469. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Product-card/Product-card.component.scss +0 -0
  470. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/Product-card/Product-card.component.ts +0 -0
  471. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/app.menu.config.ts +0 -0
  472. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/app.services.config.ts +0 -0
  473. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/constant.ts +0 -0
  474. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/app/shared/shared.module.ts +0 -0
  475. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/.gitkeep +0 -0
  476. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/css/app.scss +0 -0
  477. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/css/loader.css +0 -0
  478. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/i18n/en.json +0 -0
  479. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/i18n/es.json +0 -0
  480. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize128.png +0 -0
  481. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize16.png +0 -0
  482. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize256.png +0 -0
  483. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize32.png +0 -0
  484. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize48.png +0 -0
  485. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize64.png +0 -0
  486. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize72.png +0 -0
  487. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/icons/ontimize96.png +0 -0
  488. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/github.png +0 -0
  489. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/login_bg.png +0 -0
  490. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/no-image-transparent.png +0 -0
  491. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/no-image.png +0 -0
  492. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/ontimize.png +0 -0
  493. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/ontimize_web_log.png +0 -0
  494. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/sidenav-closed.png +0 -0
  495. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/sidenav-closed.svg +0 -0
  496. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/sidenav-opened.png +0 -0
  497. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/sidenav-opened.svg +0 -0
  498. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/images/user_profile.png +0 -0
  499. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/js/domchange.js +0 -0
  500. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/assets/js/keyboard.js +0 -0
  501. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/environments/environment.prod.ts +0 -0
  502. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/environments/environment.ts +0 -0
  503. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/favicon.ico +0 -0
  504. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/index.html +0 -0
  505. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/main.ts +0 -0
  506. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/manifest.webmanifest +0 -0
  507. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/polyfills.ts +0 -0
  508. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/styles.scss +0 -0
  509. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/src/test.ts +0 -0
  510. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/tsconfig.app.json +0 -0
  511. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/tsconfig.json +0 -0
  512. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/app/tsconfig.spec.json +0 -0
  513. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/andrew.jpg +0 -0
  514. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/anne.jpg +0 -0
  515. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/janet.jpg +0 -0
  516. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/laura.jpg +0 -0
  517. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/margaret.jpg +0 -0
  518. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/michael.jpg +0 -0
  519. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/nancy.jpg +0 -0
  520. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/robert.jpg +0 -0
  521. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Employee/steven.jpg +0 -0
  522. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/beverages.gif +0 -0
  523. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/cereals.gif +0 -0
  524. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/condiments.gif +0 -0
  525. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/confections.gif +0 -0
  526. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/diary.gif +0 -0
  527. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/meat.gif +0 -0
  528. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/produce.gif +0 -0
  529. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/images/Product/seafood.gif +0 -0
  530. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/README.md +0 -0
  531. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/README_create_react_app.md +0 -0
  532. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/package-lock.json +0 -0
  533. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/package.json +0 -0
  534. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/public/favicon.ico +0 -0
  535. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/public/index.html +0 -0
  536. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/public/logo192.png +0 -0
  537. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/public/logo512.png +0 -0
  538. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/public/manifest.json +0 -0
  539. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/public/robots.txt +0 -0
  540. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/App.css +0 -0
  541. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/App.js +0 -0
  542. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/App.test.js +0 -0
  543. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/Config.js +0 -0
  544. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/Customer.js +0 -0
  545. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/Item.js +0 -0
  546. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/Order.js +0 -0
  547. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/Product.js +0 -0
  548. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/app_loader.js +0 -0
  549. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/index.css +0 -0
  550. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/index.js +0 -0
  551. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/logo.svg +0 -0
  552. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/.eslintrc +0 -0
  553. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/.yarnrc.yml +0 -0
  554. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/default-settings.js +0 -0
  555. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/default-settings.ts +0 -0
  556. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/errors.js +0 -0
  557. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/errors.ts +0 -0
  558. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/index.test.tsx +0 -0
  559. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/index.tsx +0 -0
  560. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/ra-jsonapi-client.js +0 -0
  561. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/ra-jsonapi-client.ts +0 -0
  562. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/resourceLookup.js +0 -0
  563. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/resourceLookup.ts +0 -0
  564. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/rav4-jsonapi-client/styles.module.css +0 -0
  565. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/reportWebVitals.js +0 -0
  566. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app/src/setupTests.js +0 -0
  567. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/README.md +0 -0
  568. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/README_create_react_app.md +0 -0
  569. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/package-lock.json +0 -0
  570. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/package.json +0 -0
  571. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/product-cards.png +0 -0
  572. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/public/favicon.ico +0 -0
  573. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/public/index.html +0 -0
  574. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/public/logo192.png +0 -0
  575. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/public/logo512.png +0 -0
  576. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/public/manifest.json +0 -0
  577. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/public/robots.txt +0 -0
  578. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/App.css +0 -0
  579. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/App.js +0 -0
  580. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/App.test.js +0 -0
  581. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/Config.js +0 -0
  582. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/Customer.js +0 -0
  583. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/Item.js +0 -0
  584. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/Order.js +0 -0
  585. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/Product.js +0 -0
  586. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/app_loader.js +0 -0
  587. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/index.css +0 -0
  588. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/index.js +0 -0
  589. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/logo.svg +0 -0
  590. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/.eslintrc +0 -0
  591. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/.yarnrc.yml +0 -0
  592. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/default-settings.js +0 -0
  593. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/default-settings.ts +0 -0
  594. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/errors.js +0 -0
  595. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/errors.ts +0 -0
  596. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/index.test.tsx +0 -0
  597. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/index.tsx +0 -0
  598. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/ra-jsonapi-client.js +0 -0
  599. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/ra-jsonapi-client.ts +0 -0
  600. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/resourceLookup.js +0 -0
  601. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/resourceLookup.ts +0 -0
  602. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/rav4-jsonapi-client/styles.module.css +0 -0
  603. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/reportWebVitals.js +0 -0
  604. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/my-react-app-cards/src/setupTests.js +0 -0
  605. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/templates/bar_chart.jinja +0 -0
  606. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/ui/templates/content.html +0 -0
  607. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/venv_setup/py.py +0 -0
  608. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/venv_setup/readme_venv.md +0 -0
  609. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/venv_setup/requirements-no-cli.txt +0 -0
  610. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/venv_setup/venv-linux.sh +0 -0
  611. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/venv_setup/venv.ps1 +0 -0
  612. /api_logic_server_cli/prototypes/manager/samples/{basic_demo → basic_demo_sample}/venv_setup/venv.sh +0 -0
  613. /api_logic_server_cli/prototypes/manager/system/{install-ApiLogicServer-dev → ApiLogicServer-Internal-Dev}/install-ApiLogicServer-dev.ps1 +0 -0
  614. /api_logic_server_cli/prototypes/manager/system/{install-ApiLogicServer-dev → ApiLogicServer-Internal-Dev}/install-ApiLogicServer-dev.sh +0 -0
  615. /api_logic_server_cli/prototypes/manager/system/{install-ApiLogicServer-dev → ApiLogicServer-Internal-Dev}/readme.md +0 -0
  616. {apilogicserver-15.1.2.dist-info → apilogicserver-15.2.0.dist-info}/WHEEL +0 -0
  617. {apilogicserver-15.1.2.dist-info → apilogicserver-15.2.0.dist-info}/entry_points.txt +0 -0
  618. {apilogicserver-15.1.2.dist-info → apilogicserver-15.2.0.dist-info}/licenses/LICENSE +0 -0
  619. {apilogicserver-15.1.2.dist-info → apilogicserver-15.2.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,43 @@
1
+ // Copy this text, paste to https://dbdiagram.io/d
2
+ // Or, https://databasediagram.com/app
3
+ // Or, view in VSCode with extension: "DBML Live Preview"
4
+
5
+ Table Customer {
6
+ id INTEGER [primary key]
7
+ name VARCHAR
8
+ balance DECIMAL
9
+ credit_limit DECIMAL
10
+ email VARCHAR
11
+ email_opt_out BOOLEAN
12
+ }
13
+
14
+ Table Item {
15
+ id INTEGER [primary key]
16
+ order_id INTEGER
17
+ product_id INTEGER
18
+ quantity INTEGER
19
+ amount DECIMAL
20
+ unit_price DECIMAL
21
+ }
22
+
23
+ Table Order {
24
+ id INTEGER [primary key]
25
+ notes VARCHAR
26
+ customer_id INTEGER
27
+ CreatedOn DATE
28
+ date_shipped DATE
29
+ amount_total DECIMAL
30
+ }
31
+
32
+ Table Product {
33
+ id INTEGER [primary key]
34
+ name VARCHAR
35
+ unit_price DECIMAL
36
+ }
37
+
38
+
39
+
40
+ // Relationships
41
+ Ref: Item.(order_id) < Order.(id)
42
+ Ref: Item.(product_id) < Product.(id)
43
+ Ref: Order.(customer_id) < Customer.(id)
@@ -0,0 +1,3 @@
1
+ This directory contains training for your AI Assistant.
2
+
3
+ Its use it bootstrapped from `.github/.copilot-instructions.md`
@@ -0,0 +1,593 @@
1
+ # AI Training: Creating Tests from Rules
2
+
3
+ > **🤖 For AI Assistants Only**
4
+ >
5
+ > This is internal training material for AI assistants (like GitHub Copilot) to generate Behave tests from declarative business rules.
6
+ >
7
+ > **👤 For Users:** See the [public documentation](https://apilogicserver.github.io/Docs/Behave-Creation/) which covers how to run tests, generate reports, and understand the testing framework.
8
+ >
9
+ > This document focuses on Phase 2 testing (using custom business APIs) and the critical patterns AI must follow to generate correct tests.
10
+
11
+ ## CRITICAL: Test Generation Workflow
12
+
13
+ **When user says "create tests from rules", follow this EXACT sequence:**
14
+
15
+ ```
16
+ Step 1a. Read database/models.py → Understand schema (IDs, aggregates, columns)
17
+ Step 1b. Read logic/declare_logic.py → Identify rules to test
18
+ Step 1c. Scan api/api_discovery/*.py → Discover custom APIs (PHASE 2!)
19
+ Step 2. Decide Phase 1 vs Phase 2 → Based on custom API existence
20
+ Step 3. Generate .feature files → Business language scenarios
21
+ Step 4. Implement steps/*.py → Using discovered APIs or CRUD
22
+ Step 5. Run tests → python behave_run.py
23
+ ```
24
+
25
+ **DO NOT skip Step 1c!** Custom APIs change the entire testing approach.
26
+
27
+ ## Phase 1 vs Phase 2: The Core Decision
28
+
29
+ ### Phase 1: CRUD-Level Testing
30
+ - Direct API calls (POST, PATCH, DELETE)
31
+ - Granular rule testing (update qty, change FK, delete)
32
+ - Use when: No custom API exists
33
+
34
+ ### Phase 2: Business Transaction Testing
35
+ - Custom business APIs (api/api_discovery/)
36
+ - Complete transactions (Order + Items together)
37
+ - Business-friendly language ("Account" vs "customer_id")
38
+ - Use when: Custom API exists for the business object
39
+
40
+ **Decision Tree:**
41
+ ```
42
+ Custom API exists in api/api_discovery/?
43
+ ├─ YES → Phase 2 for CREATE, Phase 1 for UPDATE/DELETE
44
+ └─ NO → Phase 1 for everything
45
+ ```
46
+
47
+ ## Step 1c: Discover Custom APIs (Phase 2)
48
+
49
+ **CRITICAL:** Check for custom APIs BEFORE generating CRUD tests!
50
+
51
+ **Discovery Process:**
52
+ ```python
53
+ # 1. Scan api/api_discovery/*.py
54
+ # 2. Find classes with @jsonapi_rpc decorator
55
+ # 3. Extract: method name, endpoint, parameters, models created
56
+ # 4. Match to business rules (which rules does it test?)
57
+ ```
58
+
59
+ **CRITICAL - Custom API Calling Convention:**
60
+
61
+ Custom APIs require **BOTH** `"method"` and `"args"` in the `meta` object:
62
+
63
+ ```python
64
+ # ✅ CORRECT - Has both "method" and "args"
65
+ {
66
+ "meta": {
67
+ "method": "OrderB2B", # ← REQUIRED!
68
+ "args": {
69
+ "data": { ... }
70
+ }
71
+ }
72
+ }
73
+
74
+ # ❌ WRONG - Missing "method" field
75
+ {
76
+ "meta": {
77
+ "args": {
78
+ "data": { ... }
79
+ }
80
+ }
81
+ }
82
+ ```
83
+
84
+ Without the `"method"` field, the API call will fail with a 500 error.
85
+
86
+ **Example Discovery - OrderB2B:**
87
+ ```python
88
+ # api/api_discovery/order_b2b_service.py
89
+ class OrderB2BEndPoint(safrs.JABase):
90
+ @jsonapi_rpc(http_methods=["POST"])
91
+ def OrderB2B(self, *args, **kwargs):
92
+ """
93
+ Creates B2B orders from external partner systems.
94
+
95
+ Parameters:
96
+ Account: str - Customer name (not ID!)
97
+ Notes: str
98
+ Items: list - [{Name, QuantityOrdered}]
99
+ """
100
+ ```
101
+
102
+ **Discovery Result:**
103
+ ```python
104
+ {
105
+ "order_b2b_service": {
106
+ "endpoint": "/api/OrderB2BEndPoint/OrderB2B",
107
+ "parameters": {
108
+ "Account": "Customer name",
109
+ "Items": [{"Name": "Product name", "QuantityOrdered": int}]
110
+ },
111
+ "creates": ["Order", "Item"],
112
+ "tests_rules": [
113
+ "Customer.Balance = sum(Order.AmountTotal)",
114
+ "Order.AmountTotal = sum(Item.Amount)",
115
+ "Customer.Balance <= CreditLimit"
116
+ ]
117
+ }
118
+ }
119
+ ```
120
+
121
+ **Using Discovered API:**
122
+ ```python
123
+ # Phase 2: CREATE using custom API
124
+ @when('B2B order placed for "{customer_name}" with items')
125
+ def step_impl(context):
126
+ add_order_uri = 'http://localhost:5656/api/OrderB2BEndPoint/OrderB2B'
127
+ add_order_args = {
128
+ "meta": {"method": "OrderB2B", "args": {"data": {
129
+ "Account": customer_name, # Business language!
130
+ "Items": [{"Name": "Widget", "QuantityOrdered": 5}]
131
+ }}}
132
+ }
133
+ r = requests.post(url=add_order_uri, json=add_order_args)
134
+
135
+ # Phase 1: UPDATE using CRUD (granular testing)
136
+ @when('Item quantity changed to {qty:d}')
137
+ def step_impl(context, qty):
138
+ patch_uri = f'http://localhost:5656/api/Item/{item_id}/'
139
+ patch_data = {"data": {"attributes": {"quantity": qty}}}
140
+ r = requests.patch(url=patch_uri, json=patch_data)
141
+ ```
142
+
143
+ ## The 6 Critical Rules (Read FIRST!)
144
+
145
+ ### Rule #0: TEST REPEATABILITY (MOST CRITICAL!) ⚠️
146
+
147
+ **TESTS MODIFY THE DATABASE. Tests MUST be repeatable and restartable.**
148
+
149
+ ```python
150
+ # ❌ WRONG - Reuses contaminated data
151
+ @given('Customer "Bob" with balance {balance:d}')
152
+ def step_impl(context, name, balance):
153
+ r = requests.get(f'/api/Customer/?filter[name]=Bob')
154
+ if r.json()['data']:
155
+ customer = r.json()['data'][0] # REUSES Bob - balance accumulated!
156
+
157
+ # ✅ CORRECT - Always creates fresh data with timestamp
158
+ @given('Customer "Bob" with balance {balance:d}')
159
+ def step_impl(context, name, balance):
160
+ unique_name = f"Bob {int(time.time() * 1000)}" # ALWAYS unique!
161
+ post_data = {
162
+ "data": {
163
+ "type": "Customer",
164
+ "attributes": {
165
+ "name": unique_name,
166
+ "balance": balance,
167
+ "credit_limit": limit
168
+ }
169
+ }
170
+ }
171
+ r = requests.post(f'/api/Customer/', json=post_data)
172
+ context.customer_id = int(r.json()['data']['id'])
173
+ context.customer_name = unique_name # Save for later use
174
+ ```
175
+
176
+ **Critical Patterns:**
177
+ - **NEVER reuse existing customers/orders** - always create fresh
178
+ - **Use timestamps** in names: `f"Bob {int(time.time() * 1000)}"`
179
+ - **Match exact database names** - "Widget" not "Widgets"
180
+ - **Don't assume clean state** - tests may run after failures
181
+ - **Track name mappings** for multi-customer tests (see Rule #8)
182
+ - **Understand DERIVED vs ADDED aggregates** (see Rule #9)
183
+
184
+ ### Rule #0.5: BEHAVE STEP ORDERING (Pattern Matching!) ⚠️
185
+
186
+ **Behave matches steps by FIRST pattern that fits. More specific patterns MUST come before general ones.**
187
+
188
+ **Example 1: Carbon Neutral Products**
189
+
190
+ ```python
191
+ # ❌ WRONG ORDER - General pattern matches first, specific never runs!
192
+ @when('B2B order placed for "{customer_name}" with {quantity:d} {product_name}')
193
+ def step_impl_general(context, customer_name, quantity, product_name):
194
+ # This matches "carbon neutral Widget" as product_name="carbon neutral Widget"
195
+ # The specific carbon neutral step below NEVER executes!
196
+ ...
197
+
198
+ @when('B2B order placed for "{customer_name}" with {quantity:d} carbon neutral {product_name}')
199
+ def step_impl_carbon_neutral(context, customer_name, quantity, product_name):
200
+ # NEVER REACHED because general pattern above matched first
201
+ ...
202
+
203
+ # ✅ CORRECT ORDER - Specific pattern first!
204
+ @when('B2B order placed for "{customer_name}" with {quantity:d} carbon neutral {product_name}')
205
+ def step_impl_carbon_neutral(context, customer_name, quantity, product_name):
206
+ # This matches first for "carbon neutral Widget"
207
+ # Sets context.item_id correctly
208
+ ...
209
+
210
+ @when('B2B order placed for "{customer_name}" with {quantity:d} {product_name}')
211
+ def step_impl_general(context, customer_name, quantity, product_name):
212
+ # Only matches if "carbon neutral" not present
213
+ ...
214
+ ```
215
+
216
+ **Example 2: Multi-Item Orders**
217
+
218
+ ```python
219
+ # ❌ WRONG ORDER - Single-item pattern matches "3 Widget and 2 Gadget"
220
+ @given('Order exists for "{customer_name}" with {quantity:d} {product_name}')
221
+ def step_impl_single(context, customer_name, quantity, product_name):
222
+ # This matches FIRST!
223
+ # product_name = "Widget and 2 Gadget" (treats "and 2 Gadget" as part of name)
224
+ # Creates only 1 item, context.item_ids never set properly
225
+ ...
226
+
227
+ @given('Order exists for "{customer_name}" with {qty1:d} {product1} and {qty2:d} {product2}')
228
+ def step_impl_multi(context, customer_name, qty1, product1, qty2, product2):
229
+ # NEVER REACHED! Single-item pattern above matched first
230
+ ...
231
+
232
+ # ✅ CORRECT ORDER - Multi-item pattern first!
233
+ @given('Order exists for "{customer_name}" with {qty1:d} {product1} and {qty2:d} {product2}')
234
+ def step_impl_multi(context, customer_name, qty1, product1, qty2, product2):
235
+ # This matches first for "3 Widget and 2 Gadget"
236
+ # Creates 2 items, sets context.item_ids = [id1, id2]
237
+ ...
238
+
239
+ @given('Order exists for "{customer_name}" with {quantity:d} {product_name}')
240
+ def step_impl_single(context, customer_name, quantity, product_name):
241
+ # Only matches if "and" not present
242
+ ...
243
+ ```
244
+
245
+ **Why This Matters:**
246
+ - Wrong order → context.item_id not set → "Then Item amount" step fails with "item_id not set in context"
247
+ - Behave doesn't warn about unreachable patterns
248
+ - **ALWAYS order from most specific to most general**
249
+
250
+ **Specificity Rules:**
251
+ - More literal text = more specific ("and", "carbon neutral")
252
+ - More parameters = more specific
253
+ - Tighter type constraints = more specific
254
+
255
+ **Anti-Pattern Alert:**
256
+ Using `context.execute_steps()` to reuse step logic can cause context propagation issues. Instead, duplicate the implementation for specific patterns (DRY doesn't apply to Behave steps with context dependencies).
257
+
258
+ **Debugging Tip:**
259
+ If a step seems to execute but context variables aren't set, check if a MORE GENERAL pattern exists ABOVE it in the file.
260
+
261
+ ### Rule #1: Read database/models.py First
262
+ ```python
263
+ # Check: ID types (Integer vs String), column names, aggregates
264
+ class Customer(Base):
265
+ id = Column(Integer, primary_key=True) # Integer not String!
266
+ balance = Column(Numeric) # Check logic - is this aggregate?
267
+ ```
268
+
269
+ ### Rule #2: Use Direct FK Format
270
+ ```python
271
+ # ✅ CORRECT
272
+ post_data = {
273
+ "data": {
274
+ "attributes": {"customer_id": int(customer_id)} # Direct FK
275
+ }
276
+ }
277
+
278
+ # ❌ WRONG - causes optimistic locking errors
279
+ post_data = {
280
+ "data": {
281
+ "relationships": {"customer": {"data": {"id": customer_id}}}
282
+ }
283
+ }
284
+ ```
285
+
286
+ ### Rule #3: Mandatory Patterns
287
+ ```python
288
+ # Filter format
289
+ params = {"filter[name]": "Alice"} # NOT: {"filter": "name eq 'Alice'"}
290
+
291
+ # Unique test data
292
+ name = f"Test {int(time.time() * 1000)}" # NOT: "Test Customer"
293
+
294
+ # Convert IDs
295
+ customer_id = int(result['data']['id']) # NOT: result['data']['id']
296
+
297
+ # Imports (only these!)
298
+ from behave import *
299
+ import requests, test_utils, time
300
+ from decimal import Decimal
301
+ # NO imports from logic/, database/, integration/
302
+ ```
303
+
304
+ ### Rule #4: Complete CRUD + WHERE Coverage
305
+ ```gherkin
306
+ Scenario: Good Order (CREATE - POST)
307
+ Scenario: Item Qty Change (UPDATE - PATCH)
308
+ Scenario: Change Customer (UPDATE - FK change, both parents adjust)
309
+ Scenario: Delete Item (DELETE)
310
+ Scenario: Ship Order (WHERE exclude)
311
+ Scenario: Unship Order (WHERE include - test bidirectional!)
312
+ Scenario: Exceed Credit (Constraint FAIL - negative test)
313
+ ```
314
+
315
+ **CRITICAL:** Check `logic/declare_logic.py` for custom Python logic affecting calculations (e.g., discounts, adjustments) before writing constraint test expectations!
316
+
317
+ ### Rule #5: Security Configuration
318
+ ```python
319
+ # Read config/default.env FIRST
320
+ SECURITY_ENABLED = False # or True
321
+
322
+ # Match in test code
323
+ if SECURITY_ENABLED == False:
324
+ headers = {} # Empty
325
+ else:
326
+ headers = test_utils.login()
327
+ ```
328
+
329
+ ### Rule #6: Logic Logging
330
+ ```python
331
+ @when('Good Order Placed')
332
+ def step_impl(context):
333
+ scenario_name = 'Good Order Placed'
334
+ test_utils.prt(f'\n{scenario_name}\n', scenario_name) # 2nd arg critical!
335
+ ```
336
+
337
+ ### Rule #7: Custom API Response Handling ⚠️ NEW
338
+ ```python
339
+ # Phase 2 APIs may return different formats - handle both!
340
+ r = requests.post(url=api_uri, json=args, headers=get_headers())
341
+ context.order_created = (r.status_code == 200)
342
+
343
+ if context.order_created:
344
+ response_data = r.json()
345
+ # Custom APIs may return direct dict, not JSON:API format
346
+ context.order_id = response_data.get('order_id') # Direct field
347
+ else:
348
+ context.order_id = None # Always set to prevent KeyError
349
+
350
+ # When reading back via CRUD API:
351
+ r = requests.get(url=order_uri, headers=get_headers())
352
+ if 'data' in r.json():
353
+ order_data = r.json()['data']['attributes'] # JSON:API format
354
+ else:
355
+ order_data = r.json() # Direct format
356
+ ```
357
+
358
+ ### Rule #8: Customer Name Mapping for Multi-Customer Tests ⚠️ NEW
359
+ ```python
360
+ # When tests involve MULTIPLE customers, track the mapping!
361
+ @given('Customer "{customer_name}" with balance {balance:d}')
362
+ def step_impl(context, customer_name, balance, limit):
363
+ unique_name = f"{customer_name} {int(time.time() * 1000)}"
364
+ # ... create customer ...
365
+
366
+ # Track mapping for later lookups
367
+ if not hasattr(context, 'customer_map'):
368
+ context.customer_map = {}
369
+ context.customer_map[customer_name] = {'id': customer_id, 'unique_name': unique_name}
370
+
371
+ # Then later, when checking specific customer:
372
+ @then('Customer "{customer_name}" balance should be {expected:d}')
373
+ def step_impl(context, customer_name, expected):
374
+ # ✅ CORRECT - Use ID from mapping
375
+ customer_info = context.customer_map[customer_name]
376
+ r = requests.get(f'/api/Customer/{customer_info["id"]}/')
377
+
378
+ # ❌ WRONG - Query by original name (won't find "Bob 1729...")
379
+ r = requests.get(f'/api/Customer/?filter[name]={customer_name}')
380
+ ```
381
+
382
+ ### Rule #9: Understand DERIVED Aggregates ⚠️ NEW
383
+ ```python
384
+ # Customer.balance is DERIVED from orders, not ADDED to!
385
+ Rule.sum(derive=Customer.balance, as_sum_of=Order.amount_total,
386
+ where=lambda row: row.date_shipped is None)
387
+
388
+ # ❌ WRONG expectations:
389
+ # Given Customer "Charlie" with existing balance 220
390
+ # And Order for 180
391
+ # Then balance should be 310 # WRONG! Thinks 220 + 90 (after delete)
392
+
393
+ # ✅ CORRECT expectations:
394
+ # Given Customer "Charlie" with balance 0
395
+ # And Order for 180
396
+ # Then balance should be 90 # After deleting one item
397
+ # The "existing balance 220" is REPLACED by sum of orders (180)!
398
+ ```
399
+
400
+ ### Rule #10: Verify Actual Database Values FIRST ⚠️ NEW
401
+ ```python
402
+ # ALWAYS check actual product prices/flags before writing test expectations!
403
+
404
+ # Check prices:
405
+ # sqlite3 db.sqlite "SELECT name, unit_price, carbon_neutral FROM Product;"
406
+
407
+ # Widget=90, Gadget=150, Green=109
408
+
409
+ # ❌ WRONG - Assumed Widget=$100
410
+ # Expected: 10 * 100 = 1000
411
+
412
+ # ✅ CORRECT - Verified Widget=$90
413
+ # Expected: 10 * 90 = 900
414
+
415
+ # For carbon neutral discount (10% off when qty >= 10):
416
+ # Expected: 10 * 90 * 0.9 = 810
417
+ ```
418
+
419
+ ### Rule #11: Step Definitions Must Match Feature Files ⚠️ NEW
420
+ ```python
421
+ # Feature file:
422
+ Given Customer "Alice" with balance 0 and credit limit 1000
423
+
424
+ # Step implementation - ALL parameters must be captured:
425
+ @given('Customer "{customer_name}" with balance {balance:d} and credit limit {limit:d}')
426
+ def step_impl(context, customer_name, balance, limit): # ✅ CORRECT
427
+ pass
428
+
429
+ # ❌ WRONG - hard-coded values instead of parameters:
430
+ @given('Customer "{customer_name}" exists with balance 0 and credit limit 1000')
431
+ def step_impl(context, customer_name): # Missing balance and limit parameters!
432
+ balance = 0 # Hard-coded - won't work for different scenarios
433
+ limit = 1000
434
+ ```
435
+
436
+ ### Rule #10: Always Initialize Context Variables ⚠️ NEW
437
+ ```python
438
+ # ✅ CORRECT - prevents KeyError in subsequent steps
439
+ @when('B2B order placed')
440
+ def step_impl(context):
441
+ r = requests.post(url=api_uri, json=args)
442
+ context.order_created = (r.status_code == 200)
443
+
444
+ if context.order_created:
445
+ context.order_id = r.json().get('order_id')
446
+ else:
447
+ context.order_id = None # CRITICAL - prevents "not hasattr" errors
448
+
449
+ # Then steps can safely check:
450
+ @then('Each item calculated correctly')
451
+ def step_impl(context):
452
+ if not hasattr(context, 'order_id') or context.order_id is None:
453
+ assert not context.order_created, "Order should have failed"
454
+ return # Skip gracefully
455
+ ```
456
+
457
+ ## Complete Phase 2 Example
458
+
459
+ ### .feature File
460
+ ```gherkin
461
+ Feature: Order Processing via B2B API
462
+
463
+ # Phase 2: CREATE
464
+ Scenario: Good Order Placed
465
+ When B2B order placed for "Alice" with items:
466
+ | Name | Quantity |
467
+ | Widget | 5 |
468
+ Then Customer balance is 50
469
+ Then Order created successfully
470
+
471
+ # Phase 1: UPDATE (granular)
472
+ Scenario: Alter Item Quantity
473
+ Given Order exists with 1 item (qty 5)
474
+ When Item quantity changed to 10
475
+ Then Item amount is 100
476
+ Then Order amount_total is 100
477
+ ```
478
+
479
+ ### Step Implementation
480
+ ```python
481
+ from behave import *
482
+ import requests, test_utils, time
483
+ from decimal import Decimal
484
+
485
+ BASE_URL = 'http://localhost:5656'
486
+
487
+ @when('B2B order placed for "{customer_name}" with items')
488
+ def step_impl(context):
489
+ """Phase 2: Uses OrderB2B custom API"""
490
+ scenario_name = 'B2B Order Placement'
491
+ test_utils.prt(f'\n{scenario_name}\n', scenario_name)
492
+
493
+ items = [{"Name": row['Name'], "QuantityOrdered": int(row['Quantity'])}
494
+ for row in context.table]
495
+
496
+ add_order_uri = f'{BASE_URL}/api/OrderB2BEndPoint/OrderB2B'
497
+ add_order_args = {
498
+ "meta": {"method": "OrderB2B", "args": {"data": {
499
+ "Account": customer_name,
500
+ "Notes": "Test order",
501
+ "Items": items
502
+ }}}
503
+ }
504
+
505
+ r = requests.post(url=add_order_uri, json=add_order_args,
506
+ headers=test_utils.login())
507
+ context.order_created = (r.status_code == 200)
508
+ if context.order_created:
509
+ response_data = r.json()
510
+ context.order_id = response_data.get('order_id') # Custom API direct response
511
+ else:
512
+ context.order_id = None # Always initialize to prevent KeyError
513
+
514
+ @when('Item quantity changed to {qty:d}')
515
+ def step_impl(context, qty):
516
+ """Phase 1: Uses CRUD for granular testing"""
517
+ scenario_name = 'Item Quantity Update'
518
+ test_utils.prt(f'\n{scenario_name}\n', scenario_name)
519
+
520
+ patch_uri = f'{BASE_URL}/api/Item/{context.item_id}/'
521
+ patch_data = {
522
+ "data": {
523
+ "attributes": {"quantity": qty},
524
+ "type": "Item",
525
+ "id": context.item_id
526
+ }
527
+ }
528
+ r = requests.patch(url=patch_uri, json=patch_data,
529
+ headers=test_utils.login())
530
+
531
+ @then('Customer balance is {expected:d}')
532
+ def step_impl(context, expected):
533
+ customer_uri = f'{BASE_URL}/api/Customer/{context.customer_id}/'
534
+ r = requests.get(url=customer_uri, headers=test_utils.login())
535
+ actual = float(r.json()['data']['attributes']['balance'])
536
+ assert abs(actual - expected) < 0.01
537
+ ```
538
+
539
+ ## Quick Error Reference
540
+
541
+ | Error | Fix |
542
+ |-------|-----|
543
+ | "405 Method Not Allowed" | `SECURITY_ENABLED=False`, remove auth |
544
+ | "invalid literal for int('ALFKI')" | Check models.py - use Integer IDs |
545
+ | "balance: field not writable" | Aggregate - create child Orders, don't set |
546
+ | "Invalid filter format" | Use `filter[name]=value` |
547
+ | "row altered by another user" | Use direct FK: `"customer_id": int(id)` |
548
+ | "circular import" | Remove imports from logic/, database/ |
549
+ | "empty logic log" | Add `test_utils.prt(msg, scenario_name)` |
550
+
551
+ ## Test Generation Workflow
552
+
553
+ ```
554
+ 1. Read database/models.py → Understand schema (IDs, aggregates)
555
+ 2. Read logic/declare_logic.py → Identify rules to test
556
+ 3. Scan api/api_discovery/*.py → Discover custom APIs
557
+ 4. Decide Phase 1 vs Phase 2 → Based on custom API existence
558
+ 5. Generate .feature files → Business language scenarios
559
+ 6. Implement steps/*.py → Using discovered APIs or CRUD
560
+ 7. Run tests → python behave_run.py
561
+ 8. Generate report → python behave_logic_report.py run
562
+ ```
563
+
564
+ ## Key Testing Patterns
565
+
566
+ **Test ALL scenarios for each rule:**
567
+ - ✅ CREATE (POST) - new entity triggers rules
568
+ - ✅ UPDATE (PATCH) - modify triggers recalc
569
+ - ✅ UPDATE FK - change parent (both old/new adjust)
570
+ - ✅ DELETE - remove entity (aggregates down)
571
+ - ✅ WHERE include - condition becomes true
572
+ - ✅ WHERE exclude - condition becomes false
573
+ - ✅ Constraint pass - valid data accepted
574
+ - ✅ Constraint fail - invalid data rejected
575
+
576
+ **Common missed scenarios:**
577
+ - ❌ Only testing CREATE/UPDATE, not DELETE
578
+ - ❌ Only testing WHERE one direction (ship, not unship)
579
+ - ❌ Only testing constraint pass, not fail
580
+ - ❌ Only testing FK create, not FK change
581
+
582
+ ## Benefits of Phase 2
583
+
584
+ | Phase 2 (Custom API) | Phase 1 (CRUD) |
585
+ |---------------------|----------------|
586
+ | One API call | Multiple CRUD calls |
587
+ | Business language | Technical IDs |
588
+ | Tests API + Rules | Tests Rules only |
589
+ | Realistic scenarios | Implementation details |
590
+ | "Place Order" | "POST Order, POST Items" |
591
+
592
+ **The Magic:** Users built OrderB2B for partners → Same API provides natural test scenarios!
593
+