bc-code-intelligence-mcp 1.5.9 → 1.6.0
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.
- package/dist/index.d.ts +9 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +93 -211
- package/dist/index.js.map +1 -1
- package/dist/layers/base-layer.d.ts +6 -6
- package/dist/layers/base-layer.d.ts.map +1 -1
- package/dist/layers/base-layer.js +15 -15
- package/dist/layers/base-layer.js.map +1 -1
- package/dist/layers/embedded-layer.d.ts +2 -2
- package/dist/layers/embedded-layer.d.ts.map +1 -1
- package/dist/layers/embedded-layer.js +32 -16
- package/dist/layers/embedded-layer.js.map +1 -1
- package/dist/layers/git-layer.d.ts +2 -2
- package/dist/layers/git-layer.d.ts.map +1 -1
- package/dist/layers/git-layer.js +23 -9
- package/dist/layers/git-layer.js.map +1 -1
- package/dist/layers/project-layer.d.ts +2 -2
- package/dist/layers/project-layer.d.ts.map +1 -1
- package/dist/layers/project-layer.js +25 -11
- package/dist/layers/project-layer.js.map +1 -1
- package/dist/services/code-analysis-service.d.ts +100 -2
- package/dist/services/code-analysis-service.d.ts.map +1 -1
- package/dist/services/code-analysis-service.js +274 -8
- package/dist/services/code-analysis-service.js.map +1 -1
- package/dist/services/knowledge-service.d.ts.map +1 -1
- package/dist/services/knowledge-service.js.map +1 -1
- package/dist/services/methodology-service.d.ts +34 -2
- package/dist/services/methodology-service.d.ts.map +1 -1
- package/dist/services/methodology-service.js +279 -24
- package/dist/services/methodology-service.js.map +1 -1
- package/dist/services/multi-content-layer-service.d.ts.map +1 -1
- package/dist/services/multi-content-layer-service.js +26 -9
- package/dist/services/multi-content-layer-service.js.map +1 -1
- package/dist/services/relevance-index-service.d.ts +95 -0
- package/dist/services/relevance-index-service.d.ts.map +1 -0
- package/dist/services/relevance-index-service.js +321 -0
- package/dist/services/relevance-index-service.js.map +1 -0
- package/dist/services/roleplay-engine.d.ts +8 -0
- package/dist/services/roleplay-engine.d.ts.map +1 -1
- package/dist/services/roleplay-engine.js +35 -3
- package/dist/services/roleplay-engine.js.map +1 -1
- package/dist/services/specialist-loader.d.ts +1 -0
- package/dist/services/specialist-loader.d.ts.map +1 -1
- package/dist/services/specialist-loader.js +1 -0
- package/dist/services/specialist-loader.js.map +1 -1
- package/dist/services/workflow-service.d.ts +12 -0
- package/dist/services/workflow-service.d.ts.map +1 -1
- package/dist/services/workflow-service.js +30 -0
- package/dist/services/workflow-service.js.map +1 -1
- package/dist/services/{enhanced-prompt-service.d.ts → workflow-specialist-router.d.ts} +41 -4
- package/dist/services/workflow-specialist-router.d.ts.map +1 -0
- package/dist/services/{enhanced-prompt-service.js → workflow-specialist-router.js} +150 -24
- package/dist/services/workflow-specialist-router.js.map +1 -0
- package/dist/services/workflow-v2/index.d.ts +6 -0
- package/dist/services/workflow-v2/index.d.ts.map +1 -0
- package/dist/services/workflow-v2/index.js +6 -0
- package/dist/services/workflow-v2/index.js.map +1 -0
- package/dist/services/workflow-v2/workflow-definitions.d.ts +53 -0
- package/dist/services/workflow-v2/workflow-definitions.d.ts.map +1 -0
- package/dist/services/workflow-v2/workflow-definitions.js +722 -0
- package/dist/services/workflow-v2/workflow-definitions.js.map +1 -0
- package/dist/services/workflow-v2/workflow-session-manager.d.ts +140 -0
- package/dist/services/workflow-v2/workflow-session-manager.d.ts.map +1 -0
- package/dist/services/workflow-v2/workflow-session-manager.js +820 -0
- package/dist/services/workflow-v2/workflow-session-manager.js.map +1 -0
- package/dist/streamlined-handlers.d.ts +7 -86
- package/dist/streamlined-handlers.d.ts.map +1 -1
- package/dist/streamlined-handlers.js +23 -679
- package/dist/streamlined-handlers.js.map +1 -1
- package/dist/tools/_shared/workspace-constants.d.ts +49 -0
- package/dist/tools/_shared/workspace-constants.d.ts.map +1 -0
- package/dist/tools/_shared/workspace-constants.js +53 -0
- package/dist/tools/_shared/workspace-constants.js.map +1 -0
- package/dist/tools/advance_workflow/handler.d.ts +21 -0
- package/dist/tools/advance_workflow/handler.d.ts.map +1 -0
- package/dist/tools/advance_workflow/handler.js +58 -0
- package/dist/tools/advance_workflow/handler.js.map +1 -0
- package/dist/tools/advance_workflow/schema.d.ts +8 -0
- package/dist/tools/advance_workflow/schema.d.ts.map +1 -0
- package/dist/tools/advance_workflow/schema.js +28 -0
- package/dist/tools/advance_workflow/schema.js.map +1 -0
- package/dist/tools/analyze_al_code/handler.d.ts +12 -0
- package/dist/tools/analyze_al_code/handler.d.ts.map +1 -0
- package/dist/tools/analyze_al_code/handler.js +312 -0
- package/dist/tools/analyze_al_code/handler.js.map +1 -0
- package/dist/tools/analyze_al_code/schema.d.ts +8 -0
- package/dist/tools/analyze_al_code/schema.d.ts.map +1 -0
- package/dist/tools/analyze_al_code/schema.js +54 -0
- package/dist/tools/analyze_al_code/schema.js.map +1 -0
- package/dist/tools/ask_bc_expert/handler.d.ts +21 -0
- package/dist/tools/ask_bc_expert/handler.d.ts.map +1 -0
- package/dist/tools/ask_bc_expert/handler.js +118 -0
- package/dist/tools/ask_bc_expert/handler.js.map +1 -0
- package/dist/tools/ask_bc_expert/schema.d.ts +8 -0
- package/dist/tools/ask_bc_expert/schema.d.ts.map +1 -0
- package/dist/tools/ask_bc_expert/schema.js +33 -0
- package/dist/tools/ask_bc_expert/schema.js.map +1 -0
- package/dist/tools/context-snapshot/handler.d.ts +14 -0
- package/dist/tools/context-snapshot/handler.d.ts.map +1 -0
- package/dist/tools/context-snapshot/handler.js +143 -0
- package/dist/tools/context-snapshot/handler.js.map +1 -0
- package/dist/tools/context-snapshot/schema.d.ts +11 -0
- package/dist/tools/context-snapshot/schema.d.ts.map +1 -0
- package/dist/tools/context-snapshot/schema.js +46 -0
- package/dist/tools/context-snapshot/schema.js.map +1 -0
- package/dist/tools/core-tools.d.ts +1 -1
- package/dist/tools/core-tools.d.ts.map +1 -1
- package/dist/tools/core-tools.js +26 -9
- package/dist/tools/core-tools.js.map +1 -1
- package/dist/tools/create_layer_content/handler.d.ts +17 -0
- package/dist/tools/create_layer_content/handler.d.ts.map +1 -0
- package/dist/tools/create_layer_content/handler.js +248 -0
- package/dist/tools/create_layer_content/handler.js.map +1 -0
- package/dist/tools/create_layer_content/schema.d.ts +9 -0
- package/dist/tools/create_layer_content/schema.d.ts.map +1 -0
- package/dist/tools/create_layer_content/schema.js +42 -0
- package/dist/tools/create_layer_content/schema.js.map +1 -0
- package/dist/tools/debug/diagnose_git_layer/handler.d.ts +6 -0
- package/dist/tools/debug/diagnose_git_layer/handler.d.ts.map +1 -0
- package/dist/tools/debug/diagnose_git_layer/handler.js +286 -0
- package/dist/tools/debug/diagnose_git_layer/handler.js.map +1 -0
- package/dist/tools/debug/diagnose_git_layer/schema.d.ts +6 -0
- package/dist/tools/debug/diagnose_git_layer/schema.d.ts.map +1 -0
- package/dist/tools/debug/diagnose_git_layer/schema.js +35 -0
- package/dist/tools/debug/diagnose_git_layer/schema.js.map +1 -0
- package/dist/tools/debug/diagnose_local_layer/handler.d.ts +6 -0
- package/dist/tools/debug/diagnose_local_layer/handler.d.ts.map +1 -0
- package/dist/tools/debug/diagnose_local_layer/handler.js +285 -0
- package/dist/tools/debug/diagnose_local_layer/handler.js.map +1 -0
- package/dist/tools/debug/diagnose_local_layer/schema.d.ts +6 -0
- package/dist/tools/debug/diagnose_local_layer/schema.d.ts.map +1 -0
- package/dist/tools/debug/diagnose_local_layer/schema.js +16 -0
- package/dist/tools/debug/diagnose_local_layer/schema.js.map +1 -0
- package/dist/tools/debug/get_layer_diagnostics/handler.d.ts +7 -0
- package/dist/tools/debug/get_layer_diagnostics/handler.d.ts.map +1 -0
- package/dist/tools/debug/get_layer_diagnostics/handler.js +46 -0
- package/dist/tools/debug/get_layer_diagnostics/handler.js.map +1 -0
- package/dist/tools/debug/get_layer_diagnostics/schema.d.ts +6 -0
- package/dist/tools/debug/get_layer_diagnostics/schema.d.ts.map +1 -0
- package/dist/tools/debug/get_layer_diagnostics/schema.js +20 -0
- package/dist/tools/debug/get_layer_diagnostics/schema.js.map +1 -0
- package/dist/tools/debug/reload_layers/handler.d.ts +8 -0
- package/dist/tools/debug/reload_layers/handler.d.ts.map +1 -0
- package/dist/tools/debug/reload_layers/handler.js +83 -0
- package/dist/tools/debug/reload_layers/handler.js.map +1 -0
- package/dist/tools/debug/reload_layers/schema.d.ts +6 -0
- package/dist/tools/debug/reload_layers/schema.d.ts.map +1 -0
- package/dist/tools/debug/reload_layers/schema.js +20 -0
- package/dist/tools/debug/reload_layers/schema.js.map +1 -0
- package/dist/tools/debug/test_azure_devops_pat/handler.d.ts +6 -0
- package/dist/tools/debug/test_azure_devops_pat/handler.d.ts.map +1 -0
- package/dist/tools/debug/test_azure_devops_pat/handler.js +16 -0
- package/dist/tools/debug/test_azure_devops_pat/handler.js.map +1 -0
- package/dist/tools/debug/test_azure_devops_pat/schema.d.ts +6 -0
- package/dist/tools/debug/test_azure_devops_pat/schema.d.ts.map +1 -0
- package/dist/tools/debug/test_azure_devops_pat/schema.js +27 -0
- package/dist/tools/debug/test_azure_devops_pat/schema.js.map +1 -0
- package/dist/tools/debug/validate_layer_config/handler.d.ts +6 -0
- package/dist/tools/debug/validate_layer_config/handler.d.ts.map +1 -0
- package/dist/tools/debug/validate_layer_config/handler.js +17 -0
- package/dist/tools/debug/validate_layer_config/handler.js.map +1 -0
- package/dist/tools/debug/validate_layer_config/schema.d.ts +6 -0
- package/dist/tools/debug/validate_layer_config/schema.d.ts.map +1 -0
- package/dist/tools/debug/validate_layer_config/schema.js +21 -0
- package/dist/tools/debug/validate_layer_config/schema.js.map +1 -0
- package/dist/tools/find_bc_knowledge/handler.d.ts +21 -0
- package/dist/tools/find_bc_knowledge/handler.d.ts.map +1 -0
- package/dist/tools/find_bc_knowledge/handler.js +71 -0
- package/dist/tools/find_bc_knowledge/handler.js.map +1 -0
- package/dist/tools/find_bc_knowledge/schema.d.ts +8 -0
- package/dist/tools/find_bc_knowledge/schema.d.ts.map +1 -0
- package/dist/tools/find_bc_knowledge/schema.js +35 -0
- package/dist/tools/find_bc_knowledge/schema.js.map +1 -0
- package/dist/tools/get_bc_topic/handler.d.ts +12 -0
- package/dist/tools/get_bc_topic/handler.d.ts.map +1 -0
- package/dist/tools/get_bc_topic/handler.js +35 -0
- package/dist/tools/get_bc_topic/handler.js.map +1 -0
- package/dist/tools/get_bc_topic/schema.d.ts +8 -0
- package/dist/tools/get_bc_topic/schema.d.ts.map +1 -0
- package/dist/tools/get_bc_topic/schema.js +29 -0
- package/dist/tools/get_bc_topic/schema.js.map +1 -0
- package/dist/tools/get_codelens_mappings/handler.d.ts +8 -0
- package/dist/tools/get_codelens_mappings/handler.d.ts.map +1 -0
- package/dist/tools/get_codelens_mappings/handler.js +79 -0
- package/dist/tools/get_codelens_mappings/handler.js.map +1 -0
- package/dist/tools/get_codelens_mappings/schema.d.ts +9 -0
- package/dist/tools/get_codelens_mappings/schema.d.ts.map +1 -0
- package/dist/tools/get_codelens_mappings/schema.js +16 -0
- package/dist/tools/get_codelens_mappings/schema.js.map +1 -0
- package/dist/tools/get_workflow_help/handler.d.ts +12 -0
- package/dist/tools/get_workflow_help/handler.d.ts.map +1 -0
- package/dist/tools/get_workflow_help/handler.js +54 -0
- package/dist/tools/get_workflow_help/handler.js.map +1 -0
- package/dist/tools/get_workflow_help/schema.d.ts +8 -0
- package/dist/tools/get_workflow_help/schema.d.ts.map +1 -0
- package/dist/tools/get_workflow_help/schema.js +25 -0
- package/dist/tools/get_workflow_help/schema.js.map +1 -0
- package/dist/tools/get_workspace_info/handler.d.ts +16 -0
- package/dist/tools/get_workspace_info/handler.d.ts.map +1 -0
- package/dist/tools/get_workspace_info/handler.js +36 -0
- package/dist/tools/get_workspace_info/handler.js.map +1 -0
- package/dist/tools/get_workspace_info/schema.d.ts +8 -0
- package/dist/tools/get_workspace_info/schema.d.ts.map +1 -0
- package/dist/tools/get_workspace_info/schema.js +15 -0
- package/dist/tools/get_workspace_info/schema.js.map +1 -0
- package/dist/tools/handlers.d.ts +48 -0
- package/dist/tools/handlers.d.ts.map +1 -0
- package/dist/tools/handlers.js +81 -0
- package/dist/tools/handlers.js.map +1 -0
- package/dist/tools/index.d.ts +132 -38
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +184 -52
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/knowledge-query/handler.d.ts +29 -0
- package/dist/tools/knowledge-query/handler.d.ts.map +1 -0
- package/dist/tools/knowledge-query/handler.js +85 -0
- package/dist/tools/knowledge-query/handler.js.map +1 -0
- package/dist/tools/knowledge-query/schema.d.ts +12 -0
- package/dist/tools/knowledge-query/schema.d.ts.map +1 -0
- package/dist/tools/knowledge-query/schema.js +64 -0
- package/dist/tools/knowledge-query/schema.js.map +1 -0
- package/dist/tools/list_prompts/handler.d.ts +11 -0
- package/dist/tools/list_prompts/handler.d.ts.map +1 -0
- package/dist/tools/list_prompts/handler.js +102 -0
- package/dist/tools/list_prompts/handler.js.map +1 -0
- package/dist/tools/list_prompts/schema.d.ts +9 -0
- package/dist/tools/list_prompts/schema.d.ts.map +1 -0
- package/dist/tools/list_prompts/schema.js +28 -0
- package/dist/tools/list_prompts/schema.js.map +1 -0
- package/dist/tools/list_specialists/handler.d.ts +12 -0
- package/dist/tools/list_specialists/handler.d.ts.map +1 -0
- package/dist/tools/list_specialists/handler.js +68 -0
- package/dist/tools/list_specialists/handler.js.map +1 -0
- package/dist/tools/list_specialists/schema.d.ts +8 -0
- package/dist/tools/list_specialists/schema.d.ts.map +1 -0
- package/dist/tools/list_specialists/schema.js +24 -0
- package/dist/tools/list_specialists/schema.js.map +1 -0
- package/dist/tools/scaffold_layer_repo/handler.d.ts +15 -0
- package/dist/tools/scaffold_layer_repo/handler.d.ts.map +1 -0
- package/dist/tools/scaffold_layer_repo/handler.js +410 -0
- package/dist/tools/scaffold_layer_repo/handler.js.map +1 -0
- package/dist/tools/scaffold_layer_repo/schema.d.ts +9 -0
- package/dist/tools/scaffold_layer_repo/schema.d.ts.map +1 -0
- package/dist/tools/scaffold_layer_repo/schema.js +35 -0
- package/dist/tools/scaffold_layer_repo/schema.js.map +1 -0
- package/dist/tools/set_workspace_info/handler.d.ts +22 -0
- package/dist/tools/set_workspace_info/handler.d.ts.map +1 -0
- package/dist/tools/set_workspace_info/handler.js +60 -0
- package/dist/tools/set_workspace_info/handler.js.map +1 -0
- package/dist/tools/set_workspace_info/schema.d.ts +8 -0
- package/dist/tools/set_workspace_info/schema.d.ts.map +1 -0
- package/dist/tools/set_workspace_info/schema.js +25 -0
- package/dist/tools/set_workspace_info/schema.js.map +1 -0
- package/dist/tools/specialist-consult/handler.d.ts +23 -0
- package/dist/tools/specialist-consult/handler.d.ts.map +1 -0
- package/dist/tools/specialist-consult/handler.js +120 -0
- package/dist/tools/specialist-consult/handler.js.map +1 -0
- package/dist/tools/specialist-consult/schema.d.ts +11 -0
- package/dist/tools/specialist-consult/schema.d.ts.map +1 -0
- package/dist/tools/specialist-consult/schema.js +47 -0
- package/dist/tools/specialist-consult/schema.js.map +1 -0
- package/dist/tools/specialist-list/handler.d.ts +14 -0
- package/dist/tools/specialist-list/handler.d.ts.map +1 -0
- package/dist/tools/specialist-list/handler.js +70 -0
- package/dist/tools/specialist-list/handler.js.map +1 -0
- package/dist/tools/specialist-list/schema.d.ts +11 -0
- package/dist/tools/specialist-list/schema.d.ts.map +1 -0
- package/dist/tools/specialist-list/schema.js +29 -0
- package/dist/tools/specialist-list/schema.js.map +1 -0
- package/dist/tools/start_bc_workflow/handler.d.ts +21 -0
- package/dist/tools/start_bc_workflow/handler.d.ts.map +1 -0
- package/dist/tools/start_bc_workflow/handler.js +237 -0
- package/dist/tools/start_bc_workflow/handler.js.map +1 -0
- package/dist/tools/start_bc_workflow/schema.d.ts +8 -0
- package/dist/tools/start_bc_workflow/schema.d.ts.map +1 -0
- package/dist/tools/start_bc_workflow/schema.js +43 -0
- package/dist/tools/start_bc_workflow/schema.js.map +1 -0
- package/dist/tools/validate_layer_repo/handler.d.ts +10 -0
- package/dist/tools/validate_layer_repo/handler.d.ts.map +1 -0
- package/dist/tools/validate_layer_repo/handler.js +148 -0
- package/dist/tools/validate_layer_repo/handler.js.map +1 -0
- package/dist/tools/validate_layer_repo/schema.d.ts +9 -0
- package/dist/tools/validate_layer_repo/schema.d.ts.map +1 -0
- package/dist/tools/validate_layer_repo/schema.js +21 -0
- package/dist/tools/validate_layer_repo/schema.js.map +1 -0
- package/dist/tools/workflow-execute/handler.d.ts +44 -0
- package/dist/tools/workflow-execute/handler.d.ts.map +1 -0
- package/dist/tools/workflow-execute/handler.js +333 -0
- package/dist/tools/workflow-execute/handler.js.map +1 -0
- package/dist/tools/workflow-execute/schema.d.ts +13 -0
- package/dist/tools/workflow-execute/schema.d.ts.map +1 -0
- package/dist/tools/workflow-execute/schema.js +108 -0
- package/dist/tools/workflow-execute/schema.js.map +1 -0
- package/dist/tools/workflow_batch/handler.d.ts +21 -0
- package/dist/tools/workflow_batch/handler.d.ts.map +1 -0
- package/dist/tools/workflow_batch/handler.js +304 -0
- package/dist/tools/workflow_batch/handler.js.map +1 -0
- package/dist/tools/workflow_batch/schema.d.ts +8 -0
- package/dist/tools/workflow_batch/schema.d.ts.map +1 -0
- package/dist/tools/workflow_batch/schema.js +76 -0
- package/dist/tools/workflow_batch/schema.js.map +1 -0
- package/dist/tools/workflow_cancel/handler.d.ts +21 -0
- package/dist/tools/workflow_cancel/handler.d.ts.map +1 -0
- package/dist/tools/workflow_cancel/handler.js +157 -0
- package/dist/tools/workflow_cancel/handler.js.map +1 -0
- package/dist/tools/workflow_cancel/schema.d.ts +8 -0
- package/dist/tools/workflow_cancel/schema.d.ts.map +1 -0
- package/dist/tools/workflow_cancel/schema.js +34 -0
- package/dist/tools/workflow_cancel/schema.js.map +1 -0
- package/dist/tools/workflow_complete/handler.d.ts +21 -0
- package/dist/tools/workflow_complete/handler.d.ts.map +1 -0
- package/dist/tools/workflow_complete/handler.js +124 -0
- package/dist/tools/workflow_complete/handler.js.map +1 -0
- package/dist/tools/workflow_complete/schema.d.ts +8 -0
- package/dist/tools/workflow_complete/schema.d.ts.map +1 -0
- package/dist/tools/workflow_complete/schema.js +45 -0
- package/dist/tools/workflow_complete/schema.js.map +1 -0
- package/dist/tools/workflow_list/handler.d.ts +19 -0
- package/dist/tools/workflow_list/handler.d.ts.map +1 -0
- package/dist/tools/workflow_list/handler.js +58 -0
- package/dist/tools/workflow_list/handler.js.map +1 -0
- package/dist/tools/workflow_list/schema.d.ts +8 -0
- package/dist/tools/workflow_list/schema.d.ts.map +1 -0
- package/dist/tools/workflow_list/schema.js +26 -0
- package/dist/tools/workflow_list/schema.js.map +1 -0
- package/dist/tools/workflow_next/handler.d.ts +21 -0
- package/dist/tools/workflow_next/handler.d.ts.map +1 -0
- package/dist/tools/workflow_next/handler.js +90 -0
- package/dist/tools/workflow_next/handler.js.map +1 -0
- package/dist/tools/workflow_next/schema.d.ts +8 -0
- package/dist/tools/workflow_next/schema.d.ts.map +1 -0
- package/dist/tools/workflow_next/schema.js +28 -0
- package/dist/tools/workflow_next/schema.js.map +1 -0
- package/dist/tools/workflow_progress/handler.d.ts +21 -0
- package/dist/tools/workflow_progress/handler.d.ts.map +1 -0
- package/dist/tools/workflow_progress/handler.js +147 -0
- package/dist/tools/workflow_progress/handler.js.map +1 -0
- package/dist/tools/workflow_progress/schema.d.ts +8 -0
- package/dist/tools/workflow_progress/schema.d.ts.map +1 -0
- package/dist/tools/workflow_progress/schema.js +111 -0
- package/dist/tools/workflow_progress/schema.js.map +1 -0
- package/dist/tools/workflow_start/handler.d.ts +21 -0
- package/dist/tools/workflow_start/handler.d.ts.map +1 -0
- package/dist/tools/workflow_start/handler.js +133 -0
- package/dist/tools/workflow_start/handler.js.map +1 -0
- package/dist/tools/workflow_start/schema.d.ts +8 -0
- package/dist/tools/workflow_start/schema.d.ts.map +1 -0
- package/dist/tools/workflow_start/schema.js +102 -0
- package/dist/tools/workflow_start/schema.js.map +1 -0
- package/dist/tools/workflow_start_v2/handler.d.ts +21 -0
- package/dist/tools/workflow_start_v2/handler.d.ts.map +1 -0
- package/dist/tools/workflow_start_v2/handler.js +133 -0
- package/dist/tools/workflow_start_v2/handler.js.map +1 -0
- package/dist/tools/workflow_start_v2/schema.d.ts +8 -0
- package/dist/tools/workflow_start_v2/schema.d.ts.map +1 -0
- package/dist/tools/workflow_start_v2/schema.js +102 -0
- package/dist/tools/workflow_start_v2/schema.js.map +1 -0
- package/dist/tools/workflow_status/handler.d.ts +21 -0
- package/dist/tools/workflow_status/handler.d.ts.map +1 -0
- package/dist/tools/workflow_status/handler.js +107 -0
- package/dist/tools/workflow_status/handler.js.map +1 -0
- package/dist/tools/workflow_status/schema.d.ts +8 -0
- package/dist/tools/workflow_status/schema.d.ts.map +1 -0
- package/dist/tools/workflow_status/schema.js +33 -0
- package/dist/tools/workflow_status/schema.js.map +1 -0
- package/dist/types/bc-knowledge.d.ts +64 -13
- package/dist/types/bc-knowledge.d.ts.map +1 -1
- package/dist/types/bc-knowledge.js +15 -0
- package/dist/types/bc-knowledge.js.map +1 -1
- package/dist/types/enhanced-layer-types.d.ts +3 -3
- package/dist/types/enhanced-layer-types.d.ts.map +1 -1
- package/dist/types/workflow-v2-types.d.ts +577 -0
- package/dist/types/workflow-v2-types.d.ts.map +1 -0
- package/dist/types/workflow-v2-types.js +10 -0
- package/dist/types/workflow-v2-types.js.map +1 -0
- package/embedded-knowledge/codelens-mappings.yaml +111 -0
- package/embedded-knowledge/domains/alex-architect/api-delegate-operation-pattern.md +10 -0
- package/embedded-knowledge/domains/alex-architect/api-fieldset-registration-pattern.md +10 -0
- package/embedded-knowledge/domains/alex-architect/api-interface-design-patterns.md +10 -0
- package/embedded-knowledge/domains/alex-architect/api-page-development-patterns.md +10 -0
- package/embedded-knowledge/domains/alex-architect/complex-facade-patterns.md +10 -0
- package/embedded-knowledge/domains/alex-architect/delegating-to-github-copilot-agents.md +10 -0
- package/embedded-knowledge/domains/alex-architect/facade-pattern-al-implementation.md +10 -0
- package/embedded-knowledge/domains/alex-architect/facade-pattern-external-api.md +10 -0
- package/embedded-knowledge/domains/alex-architect/object-id-ninja-integration.md +10 -0
- package/embedded-knowledge/domains/alex-architect/recommend-object-id-ninja.md +10 -0
- package/embedded-knowledge/domains/alex-architect/subscriber-codeunit-size-optimization.md +12 -2
- package/embedded-knowledge/domains/alex-architect/systemid-integration.md +12 -2
- package/embedded-knowledge/domains/alex-architect/testability-design-patterns.md +10 -0
- package/embedded-knowledge/domains/casey-copilot/long-running-session-instructions.md +10 -0
- package/embedded-knowledge/domains/chris-config/configuration-file-discovery.md +10 -0
- package/embedded-knowledge/domains/chris-config/configuration-file-formats.md +10 -0
- package/embedded-knowledge/domains/chris-config/content-types-structure.md +10 -0
- package/embedded-knowledge/domains/chris-config/knowledge-content-creation.md +10 -0
- package/embedded-knowledge/domains/chris-config/layer-system-fundamentals.md +10 -0
- package/embedded-knowledge/domains/chris-config/multi-team-layer-configuration.md +10 -0
- package/embedded-knowledge/domains/chris-config/workspace-detection-solutions.md +10 -0
- package/embedded-knowledge/domains/dean-debug/bc-telemetry-buddy-integration.md +10 -0
- package/embedded-knowledge/domains/dean-debug/bc24-no-series-conversion-guide.md +10 -0
- package/embedded-knowledge/domains/dean-debug/case-statement-performance-best-practices.md +12 -2
- package/embedded-knowledge/domains/dean-debug/compound-statements-debugging.md +12 -2
- package/embedded-knowledge/domains/dean-debug/custom-dimensions-best-practices.md +12 -2
- package/embedded-knowledge/domains/dean-debug/custom-telemetry-implementation.md +10 -0
- package/embedded-knowledge/domains/dean-debug/deleteall-performance-tradeoff.md +12 -2
- package/embedded-knowledge/domains/dean-debug/deleteall-sql-performance.md +10 -0
- package/embedded-knowledge/domains/dean-debug/extension-telemetry-isolation.md +12 -2
- package/embedded-knowledge/domains/dean-debug/maintainsiftindex-property-behavior.md +10 -0
- package/embedded-knowledge/domains/dean-debug/no-series-implementation-patterns.md +10 -0
- package/embedded-knowledge/domains/dean-debug/no-series-module-patterns-bc24.md +10 -0
- package/embedded-knowledge/domains/dean-debug/no-series-validation-module-bc24.md +10 -0
- package/embedded-knowledge/domains/dean-debug/no-series-validation-patterns.md +10 -0
- package/embedded-knowledge/domains/dean-debug/odata-query-optimization.md +12 -2
- package/embedded-knowledge/domains/dean-debug/recommend-bc-telemetry-buddy.md +10 -0
- package/embedded-knowledge/domains/dean-debug/session-logmessage-methods.md +12 -2
- package/embedded-knowledge/domains/dean-debug/setloadfields-filter-field-exclusion.md +12 -2
- package/embedded-knowledge/domains/dean-debug/setloadfields-performance-impact.md +10 -0
- package/embedded-knowledge/domains/dean-debug/setloadfields-performance-optimization.md +10 -0
- package/embedded-knowledge/domains/dean-debug/setloadfields-placement-before-case-statements.md +12 -2
- package/embedded-knowledge/domains/dean-debug/setloadfields-placement-before-filters.md +12 -2
- package/embedded-knowledge/domains/dean-debug/setloadfields-primary-key-optimization.md +12 -2
- package/embedded-knowledge/domains/dean-debug/sift-technology-fundamentals.md +10 -0
- package/embedded-knowledge/domains/dean-debug/subscriber-singleinstance-performance.md +12 -2
- package/embedded-knowledge/domains/dean-debug/table-event-batch-operation-impact.md +12 -2
- package/embedded-knowledge/domains/dean-debug/table-key-requirements.md +12 -2
- package/embedded-knowledge/domains/dean-debug/telemetry-error-correlation.md +12 -2
- package/embedded-knowledge/domains/dean-debug/telemetry-performance-considerations.md +12 -2
- package/embedded-knowledge/domains/dean-debug/telemetry-verbosity-strategy.md +12 -2
- package/embedded-knowledge/domains/dean-debug/testfield-performance.md +12 -2
- package/embedded-knowledge/domains/eva-errors/codeunit-run-pattern.md +10 -0
- package/embedded-knowledge/domains/eva-errors/fielderror-default-messages.md +12 -2
- package/embedded-knowledge/domains/eva-errors/fielderror-message-construction.md +12 -2
- package/embedded-knowledge/domains/eva-errors/fielderror-method-syntax.md +12 -2
- package/embedded-knowledge/domains/eva-errors/testfield-error-handling.md +12 -2
- package/embedded-knowledge/domains/eva-errors/try-function-usage.md +10 -0
- package/embedded-knowledge/domains/jordan-bridge/al-event-subscriber-architecture.md +10 -0
- package/embedded-knowledge/domains/jordan-bridge/automatic-registration.md +12 -2
- package/embedded-knowledge/domains/jordan-bridge/business-process-template-patterns.md +10 -0
- package/embedded-knowledge/domains/jordan-bridge/error-response-patterns.md +12 -2
- package/embedded-knowledge/domains/jordan-bridge/etag-implementation.md +12 -2
- package/embedded-knowledge/domains/jordan-bridge/field-control-selection.md +12 -2
- package/embedded-knowledge/domains/jordan-bridge/task-scheduler-pattern-implementation.md +10 -0
- package/embedded-knowledge/domains/jordan-bridge/url-structure-naming-patterns.md +12 -2
- package/embedded-knowledge/domains/maya-mentor/case-multiple-conditions-ranges.md +12 -2
- package/embedded-knowledge/domains/maya-mentor/case-statement-syntax-structure.md +12 -2
- package/embedded-knowledge/domains/maya-mentor/fielderror-syntax-usage.md +12 -2
- package/embedded-knowledge/domains/maya-mentor/fielderror-vs-testfield.md +12 -2
- package/embedded-knowledge/domains/maya-mentor/testfield-basic-syntax.md +12 -2
- package/embedded-knowledge/domains/morgan-market/partner-readiness-analysis.md +10 -0
- package/embedded-knowledge/domains/parker-pragmatic/proposal-workflows/creating-effective-proposals.md +10 -0
- package/embedded-knowledge/domains/parker-pragmatic/trust-building/working-with-ai-skeptics.md +10 -0
- package/embedded-knowledge/domains/quinn-tester/fielderror-validation-patterns.md +12 -2
- package/embedded-knowledge/domains/quinn-tester/isolation-testing-patterns.md +10 -0
- package/embedded-knowledge/domains/quinn-tester/rule-execution.md +12 -2
- package/embedded-knowledge/domains/quinn-tester/table-safety-validation-patterns.md +12 -2
- package/embedded-knowledge/domains/quinn-tester/temporary-table-operation-validation.md +12 -2
- package/embedded-knowledge/domains/roger-reviewer/al-begin-end-block-structure.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-binary-operator-spacing.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-blank-line-organization.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-case-action-formatting.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-code-spacing-conventions.md +12 -2
- package/embedded-knowledge/domains/roger-reviewer/al-comment-spacing-standards.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-end-else-pairing.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-keyword-indentation-rules.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-line-start-keyword-positioning.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-separate-if-else-formatting.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-standard-abbreviations.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-statement-per-line-rule.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-unnecessary-else-elimination.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-variable-declaration-order.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/al-variable-naming-conventions.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/begin-block-statement-clarity.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/begin-end-positioning-patterns.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/binary-operator-line-positioning.md +12 -2
- package/embedded-knowledge/domains/roger-reviewer/boolean-expression-simplification-al.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/case-statement-error-handling-troubleshooting.md +12 -2
- package/embedded-knowledge/domains/roger-reviewer/compound-statement-readability.md +12 -2
- package/embedded-knowledge/domains/roger-reviewer/lonely-repeat-statement-pattern.md +10 -0
- package/embedded-knowledge/domains/roger-reviewer/testability-code-smells.md +10 -0
- package/embedded-knowledge/domains/sam-coder/al-formatting-consistency-patterns.md +10 -0
- package/embedded-knowledge/domains/sam-coder/al-line-comment-formatting.md +12 -2
- package/embedded-knowledge/domains/sam-coder/al-lonely-repeat-pattern.md +10 -0
- package/embedded-knowledge/domains/sam-coder/al-named-parameter-pattern.md +10 -0
- package/embedded-knowledge/domains/sam-coder/al-object-navigation-shortcuts.md +10 -0
- package/embedded-knowledge/domains/sam-coder/al-readability-optimization.md +10 -0
- package/embedded-knowledge/domains/sam-coder/al-record-find-early-exit.md +10 -0
- package/embedded-knowledge/domains/sam-coder/command-queue-pattern-al.md +10 -0
- package/embedded-knowledge/domains/sam-coder/deleteall-alternative-implementation.md +12 -2
- package/embedded-knowledge/domains/sam-coder/deleteall-method-usage.md +10 -0
- package/embedded-knowledge/domains/sam-coder/deleteall-trigger-execution.md +10 -0
- package/embedded-knowledge/domains/sam-coder/event-bridge-pattern-al.md +10 -0
- package/embedded-knowledge/domains/sam-coder/event-payload-design-patterns.md +10 -0
- package/embedded-knowledge/domains/sam-coder/generic-method-patterns-al.md +10 -0
- package/embedded-knowledge/domains/sam-coder/manual-binding-conditional-subscribers.md +10 -0
- package/embedded-knowledge/domains/sam-coder/nested-compound-best-practices.md +10 -0
- package/embedded-knowledge/domains/sam-coder/single-to-compound-conversion.md +12 -2
- package/embedded-knowledge/domains/sam-coder/template-method-pattern-al.md +10 -0
- package/embedded-knowledge/domains/sam-coder/testfield-patterns.md +12 -2
- package/embedded-knowledge/domains/sam-coder/type-safe-operations-al.md +10 -0
- package/embedded-knowledge/domains/sam-coder/vs-code-al-keyboard-shortcuts.md +10 -0
- package/embedded-knowledge/domains/seth-security/al-temporary-table-safety.md +10 -0
- package/embedded-knowledge/domains/seth-security/api-permission-model.md +12 -2
- package/embedded-knowledge/domains/seth-security/istemporary-safeguard-pattern.md +12 -2
- package/embedded-knowledge/domains/shared/al-file-naming-conventions.md +10 -0
- package/embedded-knowledge/domains/taylor-docs/al-xml-documentation-structure.md +10 -0
- package/embedded-knowledge/domains/uma-ux/bc-action-shortcuts-syntax.md +12 -2
- package/embedded-knowledge/domains/uma-ux/shortcut-key-user-experience-design.md +12 -2
- package/embedded-knowledge/scripts/frontmatter_validator.ps1 +330 -0
- package/embedded-knowledge/specialists/sam-coder.md +29 -20
- package/embedded-knowledge/workflows/bc-version-upgrade.yaml +160 -0
- package/embedded-knowledge/workflows/code-review.yaml +148 -0
- package/embedded-knowledge/workflows/error-to-errorinfo-migration.yaml +137 -0
- package/embedded-knowledge/workflows/onboarding.yaml +124 -0
- package/embedded-knowledge/workflows/performance-audit.yaml +148 -0
- package/embedded-knowledge/workflows/proposal-review.yaml +117 -0
- package/embedded-knowledge/workflows/security-audit.yaml +139 -0
- package/package.json +4 -2
- package/dist/cache/cache-manager.d.ts +0 -95
- package/dist/cache/cache-manager.d.ts.map +0 -1
- package/dist/cache/cache-manager.js +0 -328
- package/dist/cache/cache-manager.js.map +0 -1
- package/dist/cli/bc-code-intel-cli.d.ts +0 -9
- package/dist/cli/bc-code-intel-cli.d.ts.map +0 -1
- package/dist/cli/bc-code-intel-cli.js +0 -440
- package/dist/cli/bc-code-intel-cli.js.map +0 -1
- package/dist/config/test-config-loader.d.ts +0 -10
- package/dist/config/test-config-loader.d.ts.map +0 -1
- package/dist/config/test-config-loader.js +0 -135
- package/dist/config/test-config-loader.js.map +0 -1
- package/dist/config/test-enhanced-layer-service.d.ts +0 -7
- package/dist/config/test-enhanced-layer-service.d.ts.map +0 -1
- package/dist/config/test-enhanced-layer-service.js +0 -104
- package/dist/config/test-enhanced-layer-service.js.map +0 -1
- package/dist/config/test-git-layer.d.ts +0 -7
- package/dist/config/test-git-layer.d.ts.map +0 -1
- package/dist/config/test-git-layer.js +0 -68
- package/dist/config/test-git-layer.js.map +0 -1
- package/dist/dev/hot-reload.d.ts +0 -91
- package/dist/dev/hot-reload.d.ts.map +0 -1
- package/dist/dev/hot-reload.js +0 -358
- package/dist/dev/hot-reload.js.map +0 -1
- package/dist/layers/layer-service.d.ts +0 -135
- package/dist/layers/layer-service.d.ts.map +0 -1
- package/dist/layers/layer-service.js +0 -586
- package/dist/layers/layer-service.js.map +0 -1
- package/dist/monitoring/production-monitor.d.ts +0 -148
- package/dist/monitoring/production-monitor.d.ts.map +0 -1
- package/dist/monitoring/production-monitor.js +0 -463
- package/dist/monitoring/production-monitor.js.map +0 -1
- package/dist/performance/performance-monitor.d.ts +0 -99
- package/dist/performance/performance-monitor.d.ts.map +0 -1
- package/dist/performance/performance-monitor.js +0 -253
- package/dist/performance/performance-monitor.js.map +0 -1
- package/dist/sdk/bc-code-intel-client.d.ts +0 -175
- package/dist/sdk/bc-code-intel-client.d.ts.map +0 -1
- package/dist/sdk/bc-code-intel-client.js +0 -380
- package/dist/sdk/bc-code-intel-client.js.map +0 -1
- package/dist/search/intelligent-search.d.ts +0 -97
- package/dist/search/intelligent-search.d.ts.map +0 -1
- package/dist/search/intelligent-search.js +0 -358
- package/dist/search/intelligent-search.js.map +0 -1
- package/dist/security/access-control.d.ts +0 -110
- package/dist/security/access-control.d.ts.map +0 -1
- package/dist/security/access-control.js +0 -353
- package/dist/security/access-control.js.map +0 -1
- package/dist/services/enhanced-prompt-service.d.ts.map +0 -1
- package/dist/services/enhanced-prompt-service.js.map +0 -1
- package/dist/setup/post-install.d.ts +0 -12
- package/dist/setup/post-install.d.ts.map +0 -1
- package/dist/setup/post-install.js +0 -81
- package/dist/setup/post-install.js.map +0 -1
- package/dist/test-enhanced-mcp-server.d.ts +0 -7
- package/dist/test-enhanced-mcp-server.d.ts.map +0 -1
- package/dist/test-enhanced-mcp-server.js +0 -177
- package/dist/test-enhanced-mcp-server.js.map +0 -1
- package/dist/tools/specialist-tools.d.ts +0 -43
- package/dist/tools/specialist-tools.d.ts.map +0 -1
- package/dist/tools/specialist-tools.js +0 -378
- package/dist/tools/specialist-tools.js.map +0 -1
- package/dist/utils/path-utils.d.ts +0 -5
- package/dist/utils/path-utils.d.ts.map +0 -1
- package/dist/utils/path-utils.js +0 -14
- package/dist/utils/path-utils.js.map +0 -1
- package/embedded-knowledge/methodologies/index.json +0 -81
- package/embedded-knowledge/methodologies/phases/analysis-full.md +0 -208
- package/embedded-knowledge/methodologies/phases/analysis-quick.md +0 -44
- package/embedded-knowledge/methodologies/phases/analysis.md +0 -182
- package/embedded-knowledge/methodologies/phases/execution-validation-full.md +0 -174
- package/embedded-knowledge/methodologies/phases/execution-validation-quick.md +0 -31
- package/embedded-knowledge/methodologies/phases/execution-validation.md +0 -174
- package/embedded-knowledge/methodologies/phases/performance-full.md +0 -211
- package/embedded-knowledge/methodologies/phases/performance-quick.md +0 -32
- package/embedded-knowledge/methodologies/phases/performance.md +0 -211
- package/embedded-knowledge/methodologies/phases/verification-full.md +0 -162
- package/embedded-knowledge/methodologies/phases/verification-quick.md +0 -48
- package/embedded-knowledge/methodologies/phases/verification.md +0 -146
- package/embedded-knowledge/methodologies/workflow-enforcement.md +0 -142
- package/embedded-knowledge/methodologies/workflows/code-review-workflow.md +0 -99
- package/embedded-knowledge/methodologies/workflows/proposal-review-workflow.md +0 -535
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "FieldError Method Syntax and Behavior"
|
|
3
3
|
domain: "eva-errors"
|
|
4
4
|
difficulty: "intermediate"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["fielderror", "validation", "error-messages", "posting"]
|
|
7
7
|
samples: "samples/fielderror-syntax.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["FieldError", "FieldNo", "TestField"]
|
|
11
|
+
keywords: ["FieldError", "validation error", "field-specific error", "posting codeunit", "error message generation"]
|
|
12
|
+
anti_pattern_indicators: ["redundant condition checking", "generic error for field-specific issue"]
|
|
13
|
+
positive_pattern_indicators: ["FieldError with custom message", "lowercase message", "field number constant"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["codeunit", "table", "page"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.5
|
|
18
|
+
---
|
|
9
19
|
# FieldError Method Syntax and Behavior
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "TestField Error Handling and Custom Messages"
|
|
3
3
|
domain: "eva-errors"
|
|
4
4
|
difficulty: "intermediate"
|
|
@@ -6,7 +6,17 @@ bc_versions: "14+"
|
|
|
6
6
|
tags: ["error-handling", "validation", "user-experience", "custom-messages"]
|
|
7
7
|
prerequisites: ["testfield-basic-syntax", "error-handling-fundamentals"]
|
|
8
8
|
samples: "samples/testfield-error-handling.md"
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
relevance_signals:
|
|
11
|
+
constructs: ["TestField", "TryFunction", "Error", "GetLastErrorText"]
|
|
12
|
+
keywords: ["TestField", "error handling", "custom message", "validation", "try function", "batch processing", "error aggregation"]
|
|
13
|
+
anti_pattern_indicators: ["suppressing legitimate errors", "ignoring validation failures"]
|
|
14
|
+
positive_pattern_indicators: ["TryFunction wrapper", "custom validation", "aggregated errors", "progressive validation"]
|
|
15
|
+
|
|
16
|
+
applicable_object_types: ["codeunit", "table", "page"]
|
|
17
|
+
|
|
18
|
+
relevance_threshold: 0.5
|
|
19
|
+
---
|
|
10
20
|
# TestField Error Handling and Custom Messages
|
|
11
21
|
|
|
12
22
|
## Overview
|
|
@@ -8,6 +8,16 @@ samples: "samples/try-function-usage.md"
|
|
|
8
8
|
related_topics:
|
|
9
9
|
- "codeunit-run-pattern.md"
|
|
10
10
|
- "testfield-error-handling.md"
|
|
11
|
+
|
|
12
|
+
relevance_signals:
|
|
13
|
+
constructs: ["TryFunction", "GetLastErrorText", "ClearLastError", "HttpClient", "HttpResponseMessage"]
|
|
14
|
+
keywords: ["try function", "error handling", "external system", "HTTP call", "validation without termination", "read-only operation"]
|
|
15
|
+
anti_pattern_indicators: ["database write inside try", "INSERT inside try", "MODIFY inside try", "DELETE inside try", "suppressing errors"]
|
|
16
|
+
positive_pattern_indicators: ["external service wrapper", "error detection", "graceful failure", "web service call"]
|
|
17
|
+
|
|
18
|
+
applicable_object_types: ["codeunit"]
|
|
19
|
+
|
|
20
|
+
relevance_threshold: 0.6
|
|
11
21
|
---
|
|
12
22
|
# Try Function Usage Guidelines
|
|
13
23
|
|
|
@@ -14,6 +14,16 @@ implementation_steps: ["design-subscriber-structure", "implement-loose-coupling"
|
|
|
14
14
|
validation_criteria: ["maintained-loose-coupling", "acceptable-performance-impact"]
|
|
15
15
|
technical_areas: ["al-code", "integration"]
|
|
16
16
|
samples: "samples/al-event-subscriber-architecture.md"
|
|
17
|
+
|
|
18
|
+
relevance_signals:
|
|
19
|
+
constructs: ["EventSubscriber", "IntegrationEvent", "BusinessEvent", "Subscriber", "OnBefore", "OnAfter"]
|
|
20
|
+
keywords: ["event subscriber", "loose coupling", "event-driven", "integration", "extensibility", "publisher", "event handler"]
|
|
21
|
+
anti_pattern_indicators: ["tight coupling", "direct data access", "circular dependency", "subscriber failure"]
|
|
22
|
+
positive_pattern_indicators: ["single responsibility", "error isolation", "background session", "event contract"]
|
|
23
|
+
|
|
24
|
+
applicable_object_types: ["codeunit"]
|
|
25
|
+
|
|
26
|
+
relevance_threshold: 0.5
|
|
17
27
|
---
|
|
18
28
|
|
|
19
29
|
# AL Event Subscriber Architecture
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "API Page Automatic Web Service Registration"
|
|
3
3
|
domain: "jordan-bridge"
|
|
4
4
|
difficulty: "intermediate"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["web-services", "automatic-registration", "deployment"]
|
|
7
7
|
samples: "samples/automatic-registration.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["APIPage", "APIPublisher", "APIGroup", "APIVersion", "EntityName", "EntitySetName", "ODataKeyFields"]
|
|
11
|
+
keywords: ["web service", "automatic registration", "OData", "API endpoint", "service metadata", "deployment"]
|
|
12
|
+
anti_pattern_indicators: []
|
|
13
|
+
positive_pattern_indicators: ["API page", "web service registration", "OData endpoint", "service discovery"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["page"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.4
|
|
18
|
+
---
|
|
9
19
|
# API Page Automatic Web Service Registration
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -7,6 +7,16 @@ tags: ["business-process", "workflow-templates", "process-automation", "business
|
|
|
7
7
|
prerequisites: ["template-method-pattern-al", "business-process-design", "workflow-patterns"]
|
|
8
8
|
samples: "samples/business-process-templates.md"
|
|
9
9
|
related_topics: ["template-method-pattern-al", "workflow-automation-patterns"]
|
|
10
|
+
|
|
11
|
+
relevance_signals:
|
|
12
|
+
constructs: ["Interface", "Codeunit", "Enum", "Record"]
|
|
13
|
+
keywords: ["business process", "workflow template", "state management", "approval workflow", "document processing", "process automation"]
|
|
14
|
+
anti_pattern_indicators: ["over-generalization", "configuration complexity", "state corruption"]
|
|
15
|
+
positive_pattern_indicators: ["process flow", "state machine", "business rule", "template pattern", "workflow step"]
|
|
16
|
+
|
|
17
|
+
applicable_object_types: ["codeunit", "table", "enum"]
|
|
18
|
+
|
|
19
|
+
relevance_threshold: 0.5
|
|
10
20
|
---
|
|
11
21
|
|
|
12
22
|
# Business Process Template Patterns
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "Business Central API Error Response Patterns"
|
|
3
3
|
domain: "jordan-bridge"
|
|
4
4
|
difficulty: "intermediate"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["error-handling", "http-status", "api-responses"]
|
|
7
7
|
samples: "samples/api-error-responses.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["HttpClient", "HttpResponseMessage", "HttpStatusCode", "JsonObject", "JsonToken", "Error"]
|
|
11
|
+
keywords: ["error response", "HTTP status", "OData error", "400 Bad Request", "401 Unauthorized", "403 Forbidden", "404 Not Found", "409 Conflict", "500 Internal Server Error", "retry logic"]
|
|
12
|
+
anti_pattern_indicators: []
|
|
13
|
+
positive_pattern_indicators: ["error handling", "status code", "retry-after", "error recovery", "graceful degradation"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["codeunit", "page"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.5
|
|
18
|
+
---
|
|
9
19
|
# Business Central API Error Response Patterns
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "ETag Implementation for Optimistic Concurrency"
|
|
3
3
|
domain: "jordan-bridge"
|
|
4
4
|
difficulty: "advanced"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["etag", "concurrency", "conflict-resolution"]
|
|
7
7
|
samples: "samples/etag-implementation.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["SystemRowVersion", "SystemId", "If-Match", "If-None-Match", "HttpHeaders"]
|
|
11
|
+
keywords: ["ETag", "optimistic concurrency", "If-Match", "If-None-Match", "conflict detection", "concurrent modification", "version control"]
|
|
12
|
+
anti_pattern_indicators: ["lost update", "data corruption", "concurrent access without etag"]
|
|
13
|
+
positive_pattern_indicators: ["ETag validation", "concurrency control", "conflict resolution", "conditional operation"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["page", "codeunit"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.5
|
|
18
|
+
---
|
|
9
19
|
# ETag Implementation for Optimistic Concurrency
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "API Page Field Control Selection Strategy"
|
|
3
3
|
domain: "jordan-bridge"
|
|
4
4
|
difficulty: "intermediate"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["field-control", "api-design", "data-exposure"]
|
|
7
7
|
samples: "samples/api-field-control.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["field", "SystemId", "SystemCreatedAt", "SystemModifiedAt", "Editable", "FieldClass"]
|
|
11
|
+
keywords: ["field selection", "API field", "data exposure", "field control", "read-only", "editable field", "calculated field", "sensitive data"]
|
|
12
|
+
anti_pattern_indicators: ["exposing sensitive data", "PII exposure", "unnecessary field exposure"]
|
|
13
|
+
positive_pattern_indicators: ["field visibility", "security consideration", "performance optimization", "selective field loading"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["page"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.4
|
|
18
|
+
---
|
|
9
19
|
# API Page Field Control Selection Strategy
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -7,6 +7,16 @@ tags: ["task-scheduler", "job-processing", "async-patterns", "workflow-managemen
|
|
|
7
7
|
prerequisites: ["task-scheduler-basics", "queue-processing", "error-handling"]
|
|
8
8
|
samples: "samples/task-scheduler-pattern.md"
|
|
9
9
|
related_topics: ["command-queue-pattern-al", "event-bridge-pattern-al"]
|
|
10
|
+
|
|
11
|
+
relevance_signals:
|
|
12
|
+
constructs: ["TaskScheduler", "CreateTask", "JobQueue", "Codeunit.Run", "StartSession", "Sleep"]
|
|
13
|
+
keywords: ["task scheduler", "job queue", "background processing", "async task", "scheduled job", "retry policy", "batch processing"]
|
|
14
|
+
anti_pattern_indicators: ["resource exhaustion", "infinite retry", "state corruption", "silent failure"]
|
|
15
|
+
positive_pattern_indicators: ["idempotent task", "exponential backoff", "dead letter queue", "task monitoring"]
|
|
16
|
+
|
|
17
|
+
applicable_object_types: ["codeunit", "table"]
|
|
18
|
+
|
|
19
|
+
relevance_threshold: 0.5
|
|
10
20
|
---
|
|
11
21
|
|
|
12
22
|
# Task Scheduler Pattern Implementation
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "API Page URL Structure and Entity Naming Patterns"
|
|
3
3
|
domain: "jordan-bridge"
|
|
4
4
|
difficulty: "beginner"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["api-endpoints", "url-structure", "naming-conventions"]
|
|
7
7
|
samples: "samples/api-url-naming.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["APIPublisher", "APIGroup", "APIVersion", "EntityName", "EntitySetName"]
|
|
11
|
+
keywords: ["URL structure", "entity naming", "API endpoint", "OData URL", "RESTful", "plural noun", "naming convention"]
|
|
12
|
+
anti_pattern_indicators: ["inconsistent pluralization", "generic names", "technical names instead of business names"]
|
|
13
|
+
positive_pattern_indicators: ["domain-driven naming", "consistent convention", "plural entity name", "hyphen separation"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["page"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.3
|
|
18
|
+
---
|
|
9
19
|
# API Page URL Structure and Entity Naming Patterns
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "Case Statement Multiple Conditions and Ranges"
|
|
3
3
|
domain: "maya-mentor"
|
|
4
4
|
subdomain: "maya-mentor"
|
|
@@ -9,7 +9,17 @@ tags: ["case", "ranges", "multiple-values", "advanced-patterns", "conditional-lo
|
|
|
9
9
|
prerequisites: ["case-statement-syntax", "data-types", "operators"]
|
|
10
10
|
related_topics: ["case-statement-syntax", "case-performance", "numeric-operations"]
|
|
11
11
|
samples: "samples/case-statement-multiple-conditions.md"
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
relevance_signals:
|
|
14
|
+
constructs: ["case", "of", "else", "end"]
|
|
15
|
+
keywords: ["case statement", "range", "multiple values", "dotdot", "conditional logic", "branching", "pattern matching"]
|
|
16
|
+
anti_pattern_indicators: []
|
|
17
|
+
positive_pattern_indicators: ["case multiple values", "case range", "comma-separated values", "dotdot operator"]
|
|
18
|
+
|
|
19
|
+
applicable_object_types: ["codeunit", "page", "table", "report", "query"]
|
|
20
|
+
|
|
21
|
+
relevance_threshold: 0.4
|
|
22
|
+
---
|
|
13
23
|
# Case Statement Multiple Conditions and Ranges
|
|
14
24
|
|
|
15
25
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "AL Case Statement Syntax and Structure"
|
|
3
3
|
domain: "maya-mentor"
|
|
4
4
|
subdomain: "maya-mentor"
|
|
@@ -9,7 +9,17 @@ tags: ["case", "switch", "control-flow", "syntax", "branching"]
|
|
|
9
9
|
prerequisites: ["if-statements", "variable-types", "basic-syntax"]
|
|
10
10
|
related_topics: ["case-multiple-conditions", "case-performance", "case-error-handling"]
|
|
11
11
|
samples: "samples/case-statement-syntax-structure.md"
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
relevance_signals:
|
|
14
|
+
constructs: ["case", "of", "else", "end", "begin"]
|
|
15
|
+
keywords: ["case statement", "switch", "control flow", "branching", "syntax", "enum", "option"]
|
|
16
|
+
anti_pattern_indicators: []
|
|
17
|
+
positive_pattern_indicators: ["case statement", "case syntax", "case of", "switch pattern"]
|
|
18
|
+
|
|
19
|
+
applicable_object_types: ["codeunit", "page", "table", "report", "query"]
|
|
20
|
+
|
|
21
|
+
relevance_threshold: 0.4
|
|
22
|
+
---
|
|
13
23
|
# AL Case Statement Syntax and Structure
|
|
14
24
|
|
|
15
25
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "FieldError Syntax and Usage"
|
|
3
3
|
domain: "maya-mentor"
|
|
4
4
|
difficulty: "beginner"
|
|
@@ -7,7 +7,17 @@ tags: ["fielderror", "error-handling", "validation", "record-methods", "user-fee
|
|
|
7
7
|
prerequisites: ["record-basics", "field-access"]
|
|
8
8
|
samples: "samples/fielderror-syntax-usage.md"
|
|
9
9
|
related_topics: ["testfield-method", "error-method", "field-validation", "record-validation"]
|
|
10
|
-
|
|
10
|
+
|
|
11
|
+
relevance_signals:
|
|
12
|
+
constructs: ["FieldError", "Error", "OnValidate"]
|
|
13
|
+
keywords: ["field error", "validation", "error handling", "user feedback", "field validation", "runtime error"]
|
|
14
|
+
anti_pattern_indicators: []
|
|
15
|
+
positive_pattern_indicators: ["FieldError", "field error message", "field validation error", "record.FieldError"]
|
|
16
|
+
|
|
17
|
+
applicable_object_types: ["table", "codeunit", "page"]
|
|
18
|
+
|
|
19
|
+
relevance_threshold: 0.4
|
|
20
|
+
---
|
|
11
21
|
# FieldError Syntax and Usage
|
|
12
22
|
|
|
13
23
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "FieldError vs TestField Decision Guide"
|
|
3
3
|
domain: "maya-mentor"
|
|
4
4
|
difficulty: "intermediate"
|
|
@@ -6,7 +6,17 @@ bc_versions: "14+"
|
|
|
6
6
|
tags: ["fielderror", "testfield", "validation", "error-handling", "method-comparison", "decision-making", "field-validation"]
|
|
7
7
|
prerequisites: ["fielderror-syntax-usage", "testfield-basic-syntax"]
|
|
8
8
|
related_topics: ["validation-patterns", "error-handling-strategies", "field-validation"]
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
relevance_signals:
|
|
11
|
+
constructs: ["FieldError", "TestField", "Error", "OnValidate"]
|
|
12
|
+
keywords: ["fielderror", "testfield", "validation", "comparison", "decision", "method choice", "error handling"]
|
|
13
|
+
anti_pattern_indicators: []
|
|
14
|
+
positive_pattern_indicators: ["FieldError vs TestField", "when to use FieldError", "when to use TestField", "validation method choice"]
|
|
15
|
+
|
|
16
|
+
applicable_object_types: ["table", "codeunit", "page"]
|
|
17
|
+
|
|
18
|
+
relevance_threshold: 0.4
|
|
19
|
+
---
|
|
10
20
|
# FieldError vs TestField Decision Guide
|
|
11
21
|
|
|
12
22
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "TestField Basic Syntax and Usage"
|
|
3
3
|
domain: "maya-mentor"
|
|
4
4
|
difficulty: "beginner"
|
|
@@ -6,7 +6,17 @@ bc_versions: "14+"
|
|
|
6
6
|
tags: ["validation", "fields", "error-handling", "data-integrity"]
|
|
7
7
|
prerequisites: ["record-variables", "field-access"]
|
|
8
8
|
samples: "samples/testfield-basic-syntax.md"
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
relevance_signals:
|
|
11
|
+
constructs: ["TestField", "Error", "OnValidate"]
|
|
12
|
+
keywords: ["testfield", "validation", "mandatory field", "required field", "field check", "data integrity"]
|
|
13
|
+
anti_pattern_indicators: []
|
|
14
|
+
positive_pattern_indicators: ["TestField", "field validation", "mandatory check", "required field validation"]
|
|
15
|
+
|
|
16
|
+
applicable_object_types: ["table", "codeunit", "page"]
|
|
17
|
+
|
|
18
|
+
relevance_threshold: 0.4
|
|
19
|
+
---
|
|
10
20
|
# TestField Basic Syntax and Usage
|
|
11
21
|
|
|
12
22
|
## Overview
|
|
@@ -10,6 +10,16 @@ related_topics:
|
|
|
10
10
|
- "../alex-architect/api-interface-design-patterns.md"
|
|
11
11
|
- "../dean-debug/telemetry-fundamentals.md"
|
|
12
12
|
- "../seth-security/access-modifier-strategy.md"
|
|
13
|
+
|
|
14
|
+
relevance_signals:
|
|
15
|
+
constructs: ["IntegrationEvent", "BusinessEvent", "InternalEvent", "Access", "ObsoleteState", "ObsoleteReason", "LogMessage", "Session"]
|
|
16
|
+
keywords: ["AppSource", "partner readiness", "extensibility", "telemetry", "access modifiers", "events", "ISV", "PTE", "public API", "versioning", "upgrade codeunit", "migration"]
|
|
17
|
+
anti_pattern_indicators: ["insufficient events", "undocumented events", "everything public", "no deprecation", "missing telemetry", "verbose logging"]
|
|
18
|
+
positive_pattern_indicators: ["event architecture", "proper telemetry", "access modifier strategy", "interface architecture", "documentation", "versioning strategy"]
|
|
19
|
+
|
|
20
|
+
applicable_object_types: ["codeunit", "table", "page", "interface", "permissionset"]
|
|
21
|
+
|
|
22
|
+
relevance_threshold: 0.5
|
|
13
23
|
---
|
|
14
24
|
# Partner Readiness Analysis for AppSource Apps
|
|
15
25
|
|
|
@@ -11,6 +11,16 @@ applies_to:
|
|
|
11
11
|
- "AI-Assisted Development"
|
|
12
12
|
- "Collaborative Workflows"
|
|
13
13
|
last_updated: "2025-11-01"
|
|
14
|
+
|
|
15
|
+
relevance_signals:
|
|
16
|
+
constructs: ["SetCurrentKey", "SetRange", "FindFirst", "FindSet", "Error"]
|
|
17
|
+
keywords: ["AI proposal", "proposal-based", "trust building", "verification", "specialist review", "temporary folder", "reviewable", "transparency", "confidence level"]
|
|
18
|
+
anti_pattern_indicators: ["direct changes", "over-confident", "no cleanup plan", "incomplete code", "vague proposal"]
|
|
19
|
+
positive_pattern_indicators: ["complete working example", "clear reasoning", "honest limitations", "specialist review", "cleanup instructions", "confidence rating"]
|
|
20
|
+
|
|
21
|
+
applicable_object_types: ["codeunit", "table", "page", "report", "query"]
|
|
22
|
+
|
|
23
|
+
relevance_threshold: 0.3
|
|
14
24
|
---
|
|
15
25
|
|
|
16
26
|
# Creating Effective AI Proposals
|
package/embedded-knowledge/domains/parker-pragmatic/trust-building/working-with-ai-skeptics.md
CHANGED
|
@@ -11,6 +11,16 @@ applies_to:
|
|
|
11
11
|
- "AI-Assisted Development"
|
|
12
12
|
- "Team Collaboration"
|
|
13
13
|
last_updated: "2025-11-01"
|
|
14
|
+
|
|
15
|
+
relevance_signals:
|
|
16
|
+
constructs: ["SetCurrentKey", "SetRange", "FindFirst"]
|
|
17
|
+
keywords: ["AI skepticism", "trust building", "transparency", "verification", "proposal", "control", "collaboration", "confidence level", "specialist validation", "learning"]
|
|
18
|
+
anti_pattern_indicators: ["rush trust building", "hide limitations", "dismiss skepticism", "autonomous changes", "over-promise"]
|
|
19
|
+
positive_pattern_indicators: ["explain reasoning", "provide evidence", "invite validation", "acknowledge uncertainty", "gradual trust", "proposal-based"]
|
|
20
|
+
|
|
21
|
+
applicable_object_types: ["codeunit", "table", "page", "report", "query"]
|
|
22
|
+
|
|
23
|
+
relevance_threshold: 0.3
|
|
14
24
|
---
|
|
15
25
|
|
|
16
26
|
# Working with AI-Skeptical Developers
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "FieldError in Validation Patterns"
|
|
3
3
|
domain: "quinn-tester"
|
|
4
4
|
difficulty: "intermediate"
|
|
@@ -7,7 +7,17 @@ tags: ["fielderror", "validation", "business-rules", "onvalidate", "posting-code
|
|
|
7
7
|
prerequisites: ["fielderror-syntax-usage", "field-triggers", "validation-fundamentals"]
|
|
8
8
|
related_topics: ["business-rule-validation", "posting-procedures", "data-integrity-patterns"]
|
|
9
9
|
samples: "samples/fielderror-validation-patterns.md"
|
|
10
|
-
|
|
10
|
+
|
|
11
|
+
relevance_signals:
|
|
12
|
+
constructs: ["FieldError", "OnValidate", "Error", "TestField"]
|
|
13
|
+
keywords: ["validation", "business rules", "data integrity", "posting", "error handling", "field validation"]
|
|
14
|
+
anti_pattern_indicators: ["validation fails", "data integrity violation", "invalid field value"]
|
|
15
|
+
positive_pattern_indicators: ["FieldError pattern", "validation procedure", "business rule enforcement"]
|
|
16
|
+
|
|
17
|
+
applicable_object_types: ["table", "codeunit", "page"]
|
|
18
|
+
|
|
19
|
+
relevance_threshold: 0.5
|
|
20
|
+
---
|
|
11
21
|
# FieldError in Validation Patterns
|
|
12
22
|
|
|
13
23
|
## Overview
|
|
@@ -9,6 +9,16 @@ related_topics:
|
|
|
9
9
|
- "../alex-architect/testability-design-patterns.md"
|
|
10
10
|
- "../roger-reviewer/testability-code-smells.md"
|
|
11
11
|
source: "Adapted from Vjeko.com: Testing in isolation (Dec 2023)"
|
|
12
|
+
|
|
13
|
+
relevance_signals:
|
|
14
|
+
constructs: ["Interface", "Codeunit", "procedure"]
|
|
15
|
+
keywords: ["test double", "mock", "stub", "spy", "dummy", "isolation", "dependency injection", "unit testing", "test"]
|
|
16
|
+
anti_pattern_indicators: ["flaky test", "slow test", "database dependency in test"]
|
|
17
|
+
positive_pattern_indicators: ["test isolation", "mock implementation", "test double", "dependency injection"]
|
|
18
|
+
|
|
19
|
+
applicable_object_types: ["codeunit"]
|
|
20
|
+
|
|
21
|
+
relevance_threshold: 0.5
|
|
12
22
|
---
|
|
13
23
|
# Isolation Testing Patterns with Test Doubles
|
|
14
24
|
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "API Page Validation Rule Execution"
|
|
3
3
|
domain: "quinn-tester"
|
|
4
4
|
difficulty: "intermediate"
|
|
5
5
|
bc_versions: "14+"
|
|
6
6
|
tags: ["validation", "business-rules", "data-integrity"]
|
|
7
7
|
samples: "samples/rule-execution.md"
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
relevance_signals:
|
|
10
|
+
constructs: ["OnValidate", "Error", "FieldError", "TestField"]
|
|
11
|
+
keywords: ["API", "OData", "validation", "business rules", "data integrity", "HTTP", "batch processing"]
|
|
12
|
+
anti_pattern_indicators: ["validation bypass", "API error", "validation performance issue"]
|
|
13
|
+
positive_pattern_indicators: ["API validation", "rule execution", "OData validation", "field validation"]
|
|
14
|
+
|
|
15
|
+
applicable_object_types: ["page", "table", "codeunit"]
|
|
16
|
+
|
|
17
|
+
relevance_threshold: 0.5
|
|
18
|
+
---
|
|
9
19
|
# API Page Validation Rule Execution
|
|
10
20
|
|
|
11
21
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "Table Safety Validation Patterns for Error Prevention"
|
|
3
3
|
domain: "quinn-tester"
|
|
4
4
|
difficulty: "intermediate"
|
|
@@ -6,7 +6,17 @@ bc_versions: "14+"
|
|
|
6
6
|
tags: ["error-prevention", "table-safety", "validation", "defensive-programming", "data-protection"]
|
|
7
7
|
prerequisites: ["error-handling", "al-tables"]
|
|
8
8
|
samples: "samples/table-safety-validation-patterns.md"
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
relevance_signals:
|
|
11
|
+
constructs: ["IsTemporary", "Error", "TestField", "FieldError"]
|
|
12
|
+
keywords: ["defensive programming", "error prevention", "validation", "precondition", "data protection", "fail-fast"]
|
|
13
|
+
anti_pattern_indicators: ["validation bypass", "generic error handling", "late validation", "skip safety check"]
|
|
14
|
+
positive_pattern_indicators: ["safety validation", "precondition check", "defensive programming", "error prevention"]
|
|
15
|
+
|
|
16
|
+
applicable_object_types: ["table", "codeunit"]
|
|
17
|
+
|
|
18
|
+
relevance_threshold: 0.5
|
|
19
|
+
---
|
|
10
20
|
# Table Safety Validation Patterns for Error Prevention
|
|
11
21
|
|
|
12
22
|
## Overview
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
title: "Temporary Table Operation Validation Patterns"
|
|
3
3
|
domain: "quinn-tester"
|
|
4
4
|
difficulty: "intermediate"
|
|
@@ -6,7 +6,17 @@ bc_versions: "14+"
|
|
|
6
6
|
tags: ["validation", "temporary-tables", "data-integrity", "operation-safety", "preconditions"]
|
|
7
7
|
prerequisites: ["al-tables", "validation-patterns"]
|
|
8
8
|
samples: "samples/temporary-table-operation-validation.md"
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
relevance_signals:
|
|
11
|
+
constructs: ["IsTemporary", "Error", "FieldError", "TestField"]
|
|
12
|
+
keywords: ["temporary table", "validation", "precondition", "operation safety", "data integrity", "table characteristics"]
|
|
13
|
+
anti_pattern_indicators: ["incomplete validation", "late validation", "silent failure", "missing precondition check"]
|
|
14
|
+
positive_pattern_indicators: ["temporary table validation", "operation validation", "precondition check", "table type check"]
|
|
15
|
+
|
|
16
|
+
applicable_object_types: ["table", "codeunit"]
|
|
17
|
+
|
|
18
|
+
relevance_threshold: 0.5
|
|
19
|
+
---
|
|
10
20
|
# Temporary Table Operation Validation Patterns
|
|
11
21
|
|
|
12
22
|
## Overview
|
|
@@ -14,6 +14,16 @@ improvement_suggestion: "Use proper begin/end block structure for maintainable A
|
|
|
14
14
|
implementation_steps: ["understand-block-types", "apply-nesting-rules", "maintain-indentation"]
|
|
15
15
|
validation_criteria: ["proper-block-nesting", "consistent-indentation", "clear-trigger-structure"]
|
|
16
16
|
technical_areas: ["al-code", "syntax"]
|
|
17
|
+
|
|
18
|
+
relevance_signals:
|
|
19
|
+
constructs: ["begin", "end", "trigger", "procedure", "if", "then", "else", "case", "while", "for", "try", "catch"]
|
|
20
|
+
keywords: ["block structure", "nesting", "indentation", "scope", "trigger", "procedure body", "control structure"]
|
|
21
|
+
anti_pattern_indicators: ["mismatched begin/end", "inconsistent indentation", "excessive nesting", "empty blocks"]
|
|
22
|
+
positive_pattern_indicators: ["proper block nesting", "consistent indentation", "clear trigger structure"]
|
|
23
|
+
|
|
24
|
+
applicable_object_types: ["codeunit", "page", "table", "report", "query", "xmlport", "pageextension", "tableextension"]
|
|
25
|
+
|
|
26
|
+
relevance_threshold: 0.4
|
|
17
27
|
---
|
|
18
28
|
|
|
19
29
|
# AL Begin/End Block Structure Conventions
|
|
@@ -14,6 +14,16 @@ improvement_suggestion: "Use consistent spacing around binary operators to impro
|
|
|
14
14
|
implementation_steps: ["standardize-operator-spacing", "apply-consistent-patterns", "validate-readability"]
|
|
15
15
|
validation_criteria: ["consistent-operator-spacing", "improved-expression-clarity"]
|
|
16
16
|
technical_areas: ["al-code"]
|
|
17
|
+
|
|
18
|
+
relevance_signals:
|
|
19
|
+
constructs: ["+", "-", "*", "/", "mod", "=", "<>", "<", ">", "<=", ">=", "and", "or", "not", ":="]
|
|
20
|
+
keywords: ["operator spacing", "expression", "binary operator", "arithmetic", "comparison", "logical", "assignment"]
|
|
21
|
+
anti_pattern_indicators: ["no spacing around operators", "inconsistent spacing", "cramped expressions"]
|
|
22
|
+
positive_pattern_indicators: ["single space before and after", "consistent operator spacing", "clear operator separation"]
|
|
23
|
+
|
|
24
|
+
applicable_object_types: ["codeunit", "page", "table", "report", "query", "xmlport", "pageextension", "tableextension"]
|
|
25
|
+
|
|
26
|
+
relevance_threshold: 0.4
|
|
17
27
|
---
|
|
18
28
|
|
|
19
29
|
# AL Binary Operator Spacing
|
|
@@ -14,6 +14,16 @@ improvement_suggestion: "Use strategic blank lines to organize AL code into logi
|
|
|
14
14
|
implementation_steps: ["identify-logical-sections", "insert-separating-blank-lines", "validate-consistency"]
|
|
15
15
|
validation_criteria: ["logical-grouping-clear", "consistent-spacing-applied"]
|
|
16
16
|
technical_areas: ["al-code"]
|
|
17
|
+
|
|
18
|
+
relevance_signals:
|
|
19
|
+
constructs: ["var", "begin", "end", "procedure", "trigger"]
|
|
20
|
+
keywords: ["blank line", "white space", "code organization", "logical grouping", "visual separation"]
|
|
21
|
+
anti_pattern_indicators: ["excessive blank lines", "no blank lines", "random spacing", "inconsistent patterns"]
|
|
22
|
+
positive_pattern_indicators: ["logical section separation", "consistent spacing", "clear functional boundaries"]
|
|
23
|
+
|
|
24
|
+
applicable_object_types: ["codeunit", "page", "table", "report", "query", "xmlport", "pageextension", "tableextension"]
|
|
25
|
+
|
|
26
|
+
relevance_threshold: 0.4
|
|
17
27
|
---
|
|
18
28
|
|
|
19
29
|
# AL Blank Line Organization
|
|
@@ -14,6 +14,16 @@ improvement_suggestion: "Format case statement actions with consistent indentati
|
|
|
14
14
|
implementation_steps: ["standardize-case-indentation", "align-action-blocks", "validate-readability"]
|
|
15
15
|
validation_criteria: ["consistent-indentation", "clear-action-separation"]
|
|
16
16
|
technical_areas: ["al-code"]
|
|
17
|
+
|
|
18
|
+
relevance_signals:
|
|
19
|
+
constructs: ["case", "of", "else", "end"]
|
|
20
|
+
keywords: ["case statement", "case action", "case branch", "decision structure", "control flow"]
|
|
21
|
+
anti_pattern_indicators: ["inconsistent case label alignment", "poor action block indentation", "unclear action boundaries"]
|
|
22
|
+
positive_pattern_indicators: ["consistent indentation", "clear action separation", "aligned case labels"]
|
|
23
|
+
|
|
24
|
+
applicable_object_types: ["codeunit", "page", "table", "report", "query", "xmlport", "pageextension", "tableextension"]
|
|
25
|
+
|
|
26
|
+
relevance_threshold: 0.4
|
|
17
27
|
---
|
|
18
28
|
|
|
19
29
|
# AL Case Action Formatting
|