@thinkingai/ae-cli 6.0.48-workbuddy → 6.0.49
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/README.md +2 -0
- package/README.zh.md +2 -0
- package/dist/{auth-HJG2L6DR.js → auth-XZNXFRJS.js} +5 -341
- package/dist/{capability-JHYVQNQ4.js → capability-RJZ4KRGP.js} +42 -12
- package/dist/{chunk-QYJ252CT.js → chunk-4NRCTUZJ.js} +27041 -474
- package/dist/{chunk-KSQGGXGA.js → chunk-57RRFUEZ.js} +23 -7
- package/dist/{chunk-ARTIHWVD.js → chunk-7FTTULED.js} +12 -14
- package/dist/{chunk-Y3S2KNNR.js → chunk-7XGFSUOM.js} +3 -3
- package/dist/{chunk-UL6SJDYE.js → chunk-DVMLWQD4.js} +8 -186
- package/dist/{chunk-ZCM47ROU.js → chunk-DX5CDO34.js} +28 -7
- package/dist/chunk-EQ255HKO.js +38248 -0
- package/dist/{chunk-DU5MZQFQ.js → chunk-HBGADCKA.js} +3 -3
- package/dist/{chunk-6MXFJVNP.js → chunk-HFGZGYCG.js} +10 -6
- package/dist/{chunk-2BDQB42E.js → chunk-JOCDD4ON.js} +1 -1
- package/dist/{chunk-TKHSULJT.js → chunk-KPQY44JQ.js} +6 -0
- package/dist/chunk-L2QUIZTS.js +155 -0
- package/dist/{chunk-NXRKDG6E.js → chunk-MAPZ7VB6.js} +23 -21
- package/dist/chunk-V2NUHPXF.js +196 -0
- package/dist/{chunk-JFOGWBAT.js → chunk-WEPZ5M3Z.js} +5 -5
- package/dist/{community-report-client-QE4RC2XG.js → community-report-client-CU22W53K.js} +1 -1
- package/dist/{config-XMRP5NDA.js → config-XO3LI3SA.js} +4 -4
- package/dist/context-IFJI3LIT.js +46 -0
- package/dist/{data-integration-SGRITHJS.js → data-integration-HNGUKFIC.js} +47 -37
- package/dist/index.js +103 -62
- package/dist/{local-data-upload-client-LMVS7YAR.js → local-data-upload-client-GTRIT64F.js} +3 -2
- package/dist/{memory-5ZC73XBC.js → memory-QGPSNCQS.js} +4 -4
- package/dist/{metadata-LBX6O24P.js → metadata-JAQW7KGZ.js} +8 -8
- package/dist/{model-CRDIVYN5.js → model-RNPQXIBI.js} +4 -4
- package/dist/{personal-semantic-preference-7FVUTJZF.js → personal-semantic-preference-QCZ2IZTK.js} +11 -8
- package/dist/project-semantic-64JURXKF.js +372 -0
- package/dist/{sync-VVNDHU7R.js → sync-O45NXEQY.js} +10 -9
- package/dist/{te-agent-4T5TFHD6.js → te-agent-K5MSPNHJ.js} +5 -5
- package/dist/{te-analysis-TPYFOIFD.js → te-analysis-KQKCAI5H.js} +1086 -354
- package/dist/{te-community-PWOTHSEC.js → te-community-4OYU3BDA.js} +4 -4
- package/dist/{te-dataops-ZJV5QVJU.js → te-dataops-NFIPB6FX.js} +5 -5
- package/dist/{te-engage-WVHBZAXH.js → te-engage-HSVSRW22.js} +7 -7
- package/dist/{te-kb-PNM2ZKBP.js → te-kb-3TS73NO6.js} +454 -194
- package/dist/{te-system-MRCMLAWW.js → te-system-STMHLS5J.js} +12 -7
- package/dist/{te-team-Y36TG6AQ.js → te-team-3I5AOX3N.js} +6 -6
- package/dist/{update-UNKCZ5U5.js → update-RZXLPCRH.js} +4 -4
- package/package.json +22 -17
- package/skills/ae-analysis/SKILL.md +91 -91
- package/skills/ae-analysis/references/adhoc_export.md +11 -18
- package/skills/ae-analysis/references/adhoc_run.md +15 -7
- package/skills/ae-analysis/references/agent_review_detail.md +11 -0
- package/skills/ae-analysis/references/agent_review_evidence.md +46 -0
- package/skills/ae-analysis/references/agent_review_list.md +9 -0
- package/skills/ae-analysis/references/agent_review_preflight.md +96 -0
- package/skills/ae-analysis/references/agent_review_priorities_comparisons.md +76 -0
- package/skills/ae-analysis/references/agent_review_records.md +9 -0
- package/skills/ae-analysis/references/agent_review_retry.md +12 -0
- package/skills/ae-analysis/references/agent_review_review.md +16 -0
- package/skills/ae-analysis/references/agent_review_submit_to_page.md +184 -0
- package/skills/ae-analysis/references/ai_models/attribution.md +29 -0
- package/skills/ae-analysis/references/ai_models/distribution.md +40 -0
- package/skills/ae-analysis/references/ai_models/event.md +108 -0
- package/skills/ae-analysis/references/ai_models/funnel.md +46 -0
- package/skills/ae-analysis/references/ai_models/heat_map.md +26 -0
- package/skills/ae-analysis/references/ai_models/interval.md +20 -0
- package/skills/ae-analysis/references/ai_models/path.md +38 -0
- package/skills/ae-analysis/references/ai_models/prop_analysis.md +39 -0
- package/skills/ae-analysis/references/ai_models/rank_list.md +25 -0
- package/skills/ae-analysis/references/ai_models/retention.md +70 -0
- package/skills/ae-analysis/references/ai_models/revenue.md +28 -0
- package/skills/ae-analysis/references/ai_models/sql.md +74 -0
- package/skills/ae-analysis/references/ai_models/tag.md +19 -0
- package/skills/ae-analysis/references/ai_models.md +32 -473
- package/skills/ae-analysis/references/alert_create.md +7 -7
- package/skills/ae-analysis/references/alert_delete.md +4 -6
- package/skills/ae-analysis/references/alert_detail_list.md +7 -9
- package/skills/ae-analysis/references/alert_get.md +5 -7
- package/skills/ae-analysis/references/alert_job_list.md +4 -6
- package/skills/ae-analysis/references/alert_list.md +6 -8
- package/skills/ae-analysis/references/alert_notice_config_list.md +4 -6
- package/skills/ae-analysis/references/alert_start.md +5 -7
- package/skills/ae-analysis/references/alert_stop.md +5 -7
- package/skills/ae-analysis/references/alert_update.md +8 -8
- package/skills/ae-analysis/references/analysis_data_export.md +72 -0
- package/skills/ae-analysis/references/analysis_data_retrieval.md +32 -196
- package/skills/ae-analysis/references/analysis_gateway_assets.md +23 -180
- package/skills/ae-analysis/references/analysis_interpretation.md +37 -17
- package/skills/ae-analysis/references/asset_abnormal_get.md +0 -1
- package/skills/ae-analysis/references/asset_abnormal_list.md +0 -1
- package/skills/ae-analysis/references/asset_authentication_export.md +4 -0
- package/skills/ae-analysis/references/asset_authentication_list.md +7 -1
- package/skills/ae-analysis/references/asset_authentication_update.md +5 -1
- package/skills/ae-analysis/references/asset_batch_dashboard_schedule_freeze.md +8 -6
- package/skills/ae-analysis/references/asset_batch_delete.md +6 -6
- package/skills/ae-analysis/references/asset_batch_disable_auto_backup.md +4 -5
- package/skills/ae-analysis/references/asset_batch_disable_auto_update.md +5 -6
- package/skills/ae-analysis/references/asset_batch_handover.md +4 -5
- package/skills/ae-analysis/references/asset_batch_info_export.md +4 -5
- package/skills/ae-analysis/references/asset_batch_sql_export.md +5 -6
- package/skills/ae-analysis/references/asset_dependency_list.md +4 -5
- package/skills/ae-analysis/references/asset_export.md +4 -5
- package/skills/ae-analysis/references/asset_impact_list.md +5 -9
- package/skills/ae-analysis/references/asset_lineage_get.md +5 -6
- package/skills/ae-analysis/references/asset_list.md +4 -5
- package/skills/ae-analysis/references/asset_query_history_list.md +4 -8
- package/skills/ae-analysis/references/asset_recent_list.md +0 -1
- package/skills/ae-analysis/references/asset_search.md +12 -9
- package/skills/ae-analysis/references/asset_url_get.md +3 -4
- package/skills/ae-analysis/references/bi_panel_copy.md +2 -2
- package/skills/ae-analysis/references/bi_panel_page_data_export.md +4 -12
- package/skills/ae-analysis/references/bi_panel_page_data_run.md +2 -0
- package/skills/ae-analysis/references/catalog_export.md +4 -17
- package/skills/ae-analysis/references/catalog_list.md +4 -4
- package/skills/ae-analysis/references/check_delete.md +5 -7
- package/skills/ae-analysis/references/check_export.md +11 -11
- package/skills/ae-analysis/references/check_get.md +8 -10
- package/skills/ae-analysis/references/check_list.md +4 -6
- package/skills/ae-analysis/references/check_retry.md +8 -10
- package/skills/ae-analysis/references/check_run.md +2 -4
- package/skills/ae-analysis/references/command_index.md +44 -26
- package/skills/ae-analysis/references/dashboard_report_data_export.md +5 -13
- package/skills/ae-analysis/references/dashboard_report_data_run.md +1 -1
- package/skills/ae-analysis/references/dashboard_update.md +14 -3
- package/skills/ae-analysis/references/datatable_columns_get.md +0 -1
- package/skills/ae-analysis/references/datatable_influence_list.md +0 -1
- package/skills/ae-analysis/references/datatable_version_get.md +0 -1
- package/skills/ae-analysis/references/datatable_version_list.md +0 -1
- package/skills/ae-analysis/references/debug_device_add.md +1 -2
- package/skills/ae-analysis/references/drilldown_entities_export.md +3 -3
- package/skills/ae-analysis/references/drilldown_events_export.md +3 -2
- package/skills/ae-analysis/references/drilldown_user_events_export.md +2 -2
- package/skills/ae-analysis/references/entity_detail_export.md +3 -2
- package/skills/ae-analysis/references/entity_detail_run.md +1 -0
- package/skills/ae-analysis/references/event_blacklist_add.md +5 -7
- package/skills/ae-analysis/references/event_blacklist_list.md +4 -6
- package/skills/ae-analysis/references/event_blacklist_update.md +6 -8
- package/skills/ae-analysis/references/event_changelog_list.md +0 -1
- package/skills/ae-analysis/references/event_create.md +0 -1
- package/skills/ae-analysis/references/event_detail_export.md +3 -2
- package/skills/ae-analysis/references/event_detail_run.md +1 -0
- package/skills/ae-analysis/references/event_export.md +0 -1
- package/skills/ae-analysis/references/event_get.md +0 -1
- package/skills/ae-analysis/references/event_hide_update.md +0 -1
- package/skills/ae-analysis/references/event_influence_list.md +0 -1
- package/skills/ae-analysis/references/event_list.md +0 -1
- package/skills/ae-analysis/references/event_property_bundle_export.md +5 -14
- package/skills/ae-analysis/references/event_property_bundle_import.md +2 -6
- package/skills/ae-analysis/references/event_relation_update.md +0 -1
- package/skills/ae-analysis/references/event_update.md +0 -1
- package/skills/ae-analysis/references/exchange_config_update.md +0 -1
- package/skills/ae-analysis/references/exchange_rate_refresh.md +0 -1
- package/skills/ae-analysis/references/exchange_rule_list.md +0 -1
- package/skills/ae-analysis/references/exchange_rule_update.md +0 -1
- package/skills/ae-analysis/references/exchange_rule_validate.md +0 -1
- package/skills/ae-analysis/references/governance_recommendation_decisions.md +23 -0
- package/skills/ae-analysis/references/governance_recommendation_export.md +108 -0
- package/skills/ae-analysis/references/governance_recommendation_submit.md +41 -0
- package/skills/ae-analysis/references/history_tag_data_drilldown_export.md +4 -4
- package/skills/ae-analysis/references/history_tag_data_export.md +3 -3
- package/skills/ae-analysis/references/ingest_error_list.md +7 -9
- package/skills/ae-analysis/references/ingest_summary.md +6 -8
- package/skills/ae-analysis/references/live_data_export.md +10 -10
- package/skills/ae-analysis/references/live_data_list.md +7 -9
- package/skills/ae-analysis/references/metadata_resolution.md +78 -0
- package/skills/ae-analysis/references/metric_export.md +0 -1
- package/skills/ae-analysis/references/metric_get.md +0 -1
- package/skills/ae-analysis/references/metric_list.md +4 -5
- package/skills/ae-analysis/references/metric_update.md +0 -1
- package/skills/ae-analysis/references/operation_record_export.md +4 -5
- package/skills/ae-analysis/references/operation_record_list.md +4 -5
- package/skills/ae-analysis/references/personal_semantic_preference_list.md +18 -1
- package/skills/ae-analysis/references/plan_change_log_export.md +10 -10
- package/skills/ae-analysis/references/plan_change_log_list.md +4 -6
- package/skills/ae-analysis/references/plan_delete_items.md +2 -4
- package/skills/ae-analysis/references/plan_export.md +9 -9
- package/skills/ae-analysis/references/plan_generate.md +2 -4
- package/skills/ae-analysis/references/plan_get.md +4 -6
- package/skills/ae-analysis/references/plan_import_excel.md +6 -8
- package/skills/ae-analysis/references/plan_save_items.md +2 -4
- package/skills/ae-analysis/references/plan_sync_from_meta.md +4 -6
- package/skills/ae-analysis/references/project_access_detail_get.md +0 -1
- package/skills/ae-analysis/references/project_data_power_get.md +0 -1
- package/skills/ae-analysis/references/project_data_power_list.md +0 -1
- package/skills/ae-analysis/references/project_data_power_upsert.md +0 -1
- package/skills/ae-analysis/references/project_entity_create.md +0 -1
- package/skills/ae-analysis/references/project_entity_event_list.md +0 -1
- package/skills/ae-analysis/references/project_entity_get.md +0 -1
- package/skills/ae-analysis/references/project_entity_list.md +0 -1
- package/skills/ae-analysis/references/project_entity_update.md +0 -1
- package/skills/ae-analysis/references/project_function_list.md +0 -1
- package/skills/ae-analysis/references/project_info_get.md +0 -1
- package/skills/ae-analysis/references/project_info_list.md +0 -1
- package/skills/ae-analysis/references/project_info_update.md +0 -1
- package/skills/ae-analysis/references/project_mark_time_create.md +0 -1
- package/skills/ae-analysis/references/project_mark_time_list.md +0 -1
- package/skills/ae-analysis/references/project_mark_time_update.md +0 -1
- package/skills/ae-analysis/references/project_member_add.md +6 -5
- package/skills/ae-analysis/references/project_member_batch_update.md +0 -1
- package/skills/ae-analysis/references/project_member_candidate_list.md +4 -3
- package/skills/ae-analysis/references/project_member_handover_run.md +2 -3
- package/skills/ae-analysis/references/project_member_list.md +0 -1
- package/skills/ae-analysis/references/project_member_receiver_list.md +0 -1
- package/skills/ae-analysis/references/project_member_update.md +0 -1
- package/skills/ae-analysis/references/project_owner_update.md +0 -1
- package/skills/ae-analysis/references/project_permission_binding_list.md +0 -1
- package/skills/ae-analysis/references/project_role_function_list.md +0 -1
- package/skills/ae-analysis/references/project_role_get.md +0 -1
- package/skills/ae-analysis/references/project_role_list.md +0 -1
- package/skills/ae-analysis/references/project_role_upsert.md +32 -2
- package/skills/ae-analysis/references/project_role_user_list.md +0 -1
- package/skills/ae-analysis/references/project_semantic_knowledge_wiki.md +214 -0
- package/skills/ae-analysis/references/project_semantic_knowledge_wiki_plan_schema.md +93 -0
- package/skills/ae-analysis/references/project_timezone_get.md +0 -1
- package/skills/ae-analysis/references/project_timezone_overview.md +0 -1
- package/skills/ae-analysis/references/project_timezone_update.md +0 -1
- package/skills/ae-analysis/references/project_user_id_items_update.md +0 -1
- package/skills/ae-analysis/references/property_changelog_list.md +0 -1
- package/skills/ae-analysis/references/property_create.md +0 -1
- package/skills/ae-analysis/references/property_export.md +0 -1
- package/skills/ae-analysis/references/property_get.md +0 -1
- package/skills/ae-analysis/references/property_hide_update.md +0 -1
- package/skills/ae-analysis/references/property_influence_list.md +0 -1
- package/skills/ae-analysis/references/property_list.md +3 -4
- package/skills/ae-analysis/references/property_related_events.md +0 -1
- package/skills/ae-analysis/references/property_relation_update.md +0 -1
- package/skills/ae-analysis/references/property_update.md +0 -1
- package/skills/ae-analysis/references/report_create.md +4 -2
- package/skills/ae-analysis/references/report_data_export.md +11 -9
- package/skills/ae-analysis/references/report_data_run.md +14 -7
- package/skills/ae-analysis/references/report_get.md +5 -3
- package/skills/ae-analysis/references/report_list.md +2 -0
- package/skills/ae-analysis/references/report_update.md +5 -3
- package/skills/ae-analysis/references/rule_create.md +5 -6
- package/skills/ae-analysis/references/rule_delete.md +5 -5
- package/skills/ae-analysis/references/rule_list.md +3 -4
- package/skills/ae-analysis/references/rule_schema.md +3 -4
- package/skills/ae-analysis/references/rule_update.md +5 -6
- package/skills/ae-analysis/references/sdk_sample_generate.md +2 -4
- package/skills/ae-analysis/references/sql_table_columns.md +1 -1
- package/skills/ae-analysis/references/super_metadata_batch_create.md +1 -1
- package/skills/ae-analysis/references/super_metadata_batch_edit.md +1 -1
- package/skills/ae-analysis/references/system_member_add.md +1 -2
- package/skills/ae-analysis/references/system_member_status_update.md +1 -1
- package/skills/ae-analysis/references/system_ops_alert_contact_list.md +1 -1
- package/skills/ae-analysis/references/system_ops_alert_contact_test.md +0 -1
- package/skills/ae-analysis/references/system_query_monitor_overview.md +3 -3
- package/skills/ae-analysis/references/system_query_task_export.md +4 -14
- package/skills/ae-analysis/references/system_query_task_get.md +1 -1
- package/skills/ae-analysis/references/system_query_task_list.md +5 -6
- package/skills/ae-analysis/references/system_receiver_address_upsert.md +3 -3
- package/skills/ae-analysis/references/system_receiver_detection_get.md +1 -1
- package/skills/ae-analysis/references/system_third_party_login_disable.md +1 -1
- package/skills/ae-analysis/references/system_usage_trend_export.md +3 -12
- package/skills/ae-analysis/references/user_cluster_list.md +1 -1
- package/skills/ae-analysis/references/user_cluster_member_export.md +4 -4
- package/skills/ae-analysis/references/user_tag_list.md +1 -1
- package/skills/ae-analysis/references/user_tag_member_export.md +4 -4
- package/skills/ae-analysis/references/virtual_event_create.md +10 -5
- package/skills/ae-analysis/references/virtual_event_get.md +0 -1
- package/skills/ae-analysis/references/virtual_property_create.md +0 -1
- package/skills/ae-analysis/references/virtual_property_sql_rule_update.md +0 -1
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/build-project-semantic-wiki.mjs +1054 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/company-kb.mjs +112 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/default-compile-rules.md +30 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/generate-build-ir.mjs +2735 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/package-wiki-source-zip.mjs +376 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/plan-kb-source-sync.mjs +264 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/precompiled-source.mjs +49 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/upload-kb-sources-concurrently.mjs +200 -0
- package/skills/ae-analysis/scripts/read_results.py +197 -0
- package/skills/ae-analysis-global/SKILL.md +1 -1
- package/skills/ae-capability/SKILL.md +1 -1
- package/skills/ae-community/SKILL.md +1 -1
- package/skills/ae-current-context/SKILL.md +53 -0
- package/skills/ae-data-integration/SKILL.md +5 -4
- package/skills/ae-data-integration/references/lark-bitable-source.md +288 -0
- package/skills/ae-data-integration/references/lark-sheet-source.md +130 -0
- package/skills/ae-data-integration/references/manual-export-source.md +83 -0
- package/skills/ae-data-integration/references/reuse.md +2 -0
- package/skills/ae-data-integration/references/sink-upload.md +32 -0
- package/skills/ae-data-integration/references/tracking-plan.md +4 -1
- package/skills/ae-data-integration/references/ue-mapping.md +2 -2
- package/skills/ae-data-integration-helper/SKILL.md +5 -5
- package/skills/ae-data-integration-helper/references/android_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/c_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/java_sdk_faq.md +3 -3
- package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/logbus2_guide.md +1 -1
- package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +2 -2
- package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +2 -2
- package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +1 -1
- package/skills/ae-data-integration-helper/references/python_sdk_faq.md +2 -2
- package/skills/ae-data-integration-helper/references/restful_api_notes.md +2 -2
- package/skills/ae-data-integration-helper/references/sdk_log_guide.md +3 -3
- package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +11 -11
- package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +1 -1
- package/skills/ae-dataops/SKILL.md +1 -1
- package/skills/ae-engage/SKILL.md +4 -3
- package/skills/ae-engage/references/build-task-save-guide.md +3 -0
- package/skills/ae-engage/references/flow-metric-update.md +115 -1
- package/skills/ae-engage/references/save-flow.md +3 -0
- package/skills/ae-engage/references/save-task.md +21 -0
- package/skills/ae-engage/references/task-metric-update.md +151 -0
- package/skills/ae-generate-tracking-code/SKILL.md +2 -1
- package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +1 -1
- package/skills/ae-generate-tracking-code/references/datax-config.md +1 -1
- package/skills/ae-generate-tracking-code/references/logbus-config.md +1 -1
- package/skills/ae-generate-tracking-code/references/modes.md +1 -1
- package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +5 -5
- package/skills/ae-generate-tracking-code/references/snippet-delivery.md +3 -3
- package/skills/ae-generate-tracking-plan/SKILL.md +2 -2
- package/skills/ae-generate-tracking-plan/references/te-api.md +1 -0
- package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +3 -2
- package/skills/ae-kb/SKILL.md +41 -2
- package/skills/ae-kb/references/analysis-workflow.md +292 -0
- package/skills/ae-kb/references/source-mutations.md +95 -0
- package/skills/ae-kb-discovery/SKILL.md +5 -1
- package/skills/ae-metadata/SKILL.md +1 -1
- package/skills/ae-migrate-tracking-code/SKILL.md +195 -0
- package/skills/ae-migrate-tracking-code/references/ae-preset-properties.md +76 -0
- package/skills/ae-migrate-tracking-code/references/ir.md +167 -0
- package/skills/ae-migrate-tracking-code/references/mapping-framework.md +112 -0
- package/skills/ae-migrate-tracking-code/references/providers/README.md +58 -0
- package/skills/ae-migrate-tracking-code/references/providers/amplitude.md +208 -0
- package/skills/ae-migrate-tracking-code/references/providers/firebase.md +160 -0
- package/skills/ae-migrate-tracking-code/references/providers/ga4.md +92 -0
- package/skills/ae-migrate-tracking-code/references/providers/mixpanel.md +150 -0
- package/skills/ae-migrate-tracking-code/references/providers/sensors-data.md +146 -0
- package/skills/ae-system/SKILL.md +4 -4
- package/skills/ae-team/SKILL.md +2 -2
- package/skills/ae-use-agent/references/local-agent.md +1 -1
- package/assets/workbuddy-host-page/thinkingai.png +0 -0
- package/assets/workbuddy-host-page/workbuddy.png +0 -0
- package/bin/ae-cli-workbuddy.js +0 -7
- package/dist/chunk-QSO4SA6C.js +0 -72
- package/skills/ae-analysis/metadata_resolution.md +0 -184
|
@@ -7,14 +7,16 @@ import {
|
|
|
7
7
|
waitForAnalysisRun,
|
|
8
8
|
withAsyncArtifactLifecycle,
|
|
9
9
|
withInterruptSignal
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-WEPZ5M3Z.js";
|
|
11
11
|
import {
|
|
12
|
-
createCapabilityCommand
|
|
13
|
-
|
|
12
|
+
createCapabilityCommand,
|
|
13
|
+
definitionIntentSnapshotFlag,
|
|
14
|
+
modelDefinitionIntentSnapshotFlag
|
|
15
|
+
} from "./chunk-L2QUIZTS.js";
|
|
14
16
|
import {
|
|
15
17
|
registerCapabilityGatewayRoute,
|
|
16
18
|
resolveGatewayDomain
|
|
17
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-KPQY44JQ.js";
|
|
18
20
|
import {
|
|
19
21
|
CapabilityGatewayError,
|
|
20
22
|
buildCapabilityGatewayUrl,
|
|
@@ -25,18 +27,18 @@ import {
|
|
|
25
27
|
requestCapabilityGatewayWithEnvelope,
|
|
26
28
|
uploadInputFile,
|
|
27
29
|
validateCapability
|
|
28
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-HFGZGYCG.js";
|
|
29
31
|
import {
|
|
30
32
|
withOutputMetadata
|
|
31
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-DX5CDO34.js";
|
|
32
34
|
import "./chunk-Y74WTIKJ.js";
|
|
33
35
|
import {
|
|
34
36
|
getCliToken
|
|
35
|
-
} from "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
+
} from "./chunk-7XGFSUOM.js";
|
|
38
|
+
import "./chunk-7FTTULED.js";
|
|
37
39
|
import {
|
|
38
40
|
CliValidationError
|
|
39
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-MAPZ7VB6.js";
|
|
40
42
|
|
|
41
43
|
// src/commands/te-analysis/capability-shared.ts
|
|
42
44
|
var ANALYSIS_GATEWAY_CLI_SERVICES = /* @__PURE__ */ new Set(["project", "system"]);
|
|
@@ -404,99 +406,43 @@ function validateCatalogExportFlags(ctx) {
|
|
|
404
406
|
throw new CliValidationError("--output must use the .jsonl extension");
|
|
405
407
|
}
|
|
406
408
|
}
|
|
407
|
-
function catalogArtifactMaterializer(
|
|
408
|
-
|
|
409
|
-
|
|
409
|
+
async function catalogArtifactMaterializer({
|
|
410
|
+
ctx,
|
|
411
|
+
runId,
|
|
412
|
+
artifactId,
|
|
413
|
+
output,
|
|
414
|
+
force,
|
|
415
|
+
signal,
|
|
416
|
+
finalDescriptor
|
|
417
|
+
}) {
|
|
418
|
+
await assertRegularFileOrMissing(resolve(output), force);
|
|
419
|
+
const download = await downloadAnalysisArtifact(
|
|
420
|
+
ctx.host(),
|
|
410
421
|
runId,
|
|
411
422
|
artifactId,
|
|
412
423
|
output,
|
|
413
|
-
force,
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
const
|
|
418
|
-
const
|
|
419
|
-
|
|
420
|
-
`${basename(outputPath, extname(outputPath))}.meta.json`
|
|
421
|
-
);
|
|
422
|
-
await mkdir(dirname(outputPath), { recursive: true });
|
|
423
|
-
await assertRegularFileOrMissing(outputPath, force);
|
|
424
|
-
await assertRegularFileOrMissing(metaPath, force);
|
|
425
|
-
const suffix = `${process.pid}.${randomBytes(8).toString("hex")}`;
|
|
426
|
-
const partPath = `${outputPath}.part.${suffix}`;
|
|
427
|
-
const metaPartPath = `${metaPath}.part.${suffix}`;
|
|
428
|
-
let handle;
|
|
429
|
-
try {
|
|
430
|
-
const download = await downloadAnalysisArtifact(
|
|
431
|
-
ctx.host(),
|
|
432
|
-
runId,
|
|
433
|
-
artifactId,
|
|
434
|
-
partPath,
|
|
435
|
-
{ force: true, signal, ensureReady: false }
|
|
436
|
-
);
|
|
437
|
-
const hash = createHash("sha256");
|
|
438
|
-
let bytes = 0;
|
|
439
|
-
let rows = 0;
|
|
440
|
-
for await (const chunk of createReadStream(partPath)) {
|
|
441
|
-
const buffer = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
|
|
442
|
-
hash.update(buffer);
|
|
443
|
-
bytes += buffer.length;
|
|
444
|
-
for (const value of buffer) {
|
|
445
|
-
if (value === 10) rows++;
|
|
446
|
-
}
|
|
447
|
-
}
|
|
448
|
-
const contentSha256 = hash.digest("hex");
|
|
449
|
-
const token = await getCliToken(ctx.host());
|
|
450
|
-
const metadata = {
|
|
451
|
-
schema_version: 1,
|
|
452
|
-
resource_type: resourceType,
|
|
453
|
-
host: ctx.host(),
|
|
454
|
-
project_id: ctx.num("project-id"),
|
|
455
|
-
principal_fingerprint: `sha256:${createHash("sha256").update(token).digest("hex")}`,
|
|
456
|
-
generated_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
457
|
-
row_count: rows,
|
|
458
|
-
complete: true,
|
|
459
|
-
content_sha256: contentSha256,
|
|
460
|
-
run_id: runId,
|
|
461
|
-
artifact_id: artifactId
|
|
462
|
-
};
|
|
463
|
-
handle = await open(metaPartPath, "w", 384);
|
|
464
|
-
await handle.write(`${JSON.stringify(metadata)}
|
|
465
|
-
`, void 0, "utf8");
|
|
466
|
-
await handle.sync();
|
|
467
|
-
await handle.close();
|
|
468
|
-
handle = void 0;
|
|
469
|
-
await publishCatalogPair(partPath, outputPath, metaPartPath, metaPath, suffix);
|
|
470
|
-
return {
|
|
471
|
-
...finalDescriptor,
|
|
472
|
-
...download,
|
|
473
|
-
output_path: outputPath,
|
|
474
|
-
metadata_path: metaPath,
|
|
475
|
-
format: "jsonl",
|
|
476
|
-
row_count: rows,
|
|
477
|
-
bytes,
|
|
478
|
-
content_sha256: contentSha256,
|
|
479
|
-
complete: true
|
|
480
|
-
};
|
|
481
|
-
} catch (error) {
|
|
482
|
-
await handle?.close().catch(() => void 0);
|
|
483
|
-
await rm(partPath, { force: true }).catch(() => void 0);
|
|
484
|
-
await rm(metaPartPath, { force: true }).catch(() => void 0);
|
|
485
|
-
throw error;
|
|
424
|
+
{ force, signal, ensureReady: false, mode: 384 }
|
|
425
|
+
);
|
|
426
|
+
let rows = 0;
|
|
427
|
+
for await (const chunk of createReadStream(download.output_path)) {
|
|
428
|
+
const buffer = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
|
|
429
|
+
for (const value of buffer) {
|
|
430
|
+
if (value === 10) rows++;
|
|
486
431
|
}
|
|
432
|
+
}
|
|
433
|
+
return {
|
|
434
|
+
...finalDescriptor,
|
|
435
|
+
...download,
|
|
436
|
+
format: "jsonl",
|
|
437
|
+
row_count: rows,
|
|
438
|
+
complete: true
|
|
487
439
|
};
|
|
488
440
|
}
|
|
489
441
|
async function preflightCatalogArtifactOutput({
|
|
490
442
|
output,
|
|
491
443
|
force
|
|
492
444
|
}) {
|
|
493
|
-
|
|
494
|
-
const metaPath = join(
|
|
495
|
-
dirname(outputPath),
|
|
496
|
-
`${basename(outputPath, extname(outputPath))}.meta.json`
|
|
497
|
-
);
|
|
498
|
-
await assertRegularFileOrMissing(outputPath, force);
|
|
499
|
-
await assertRegularFileOrMissing(metaPath, force);
|
|
445
|
+
await assertRegularFileOrMissing(resolve(output), force);
|
|
500
446
|
}
|
|
501
447
|
function validateQueriesFlag(ctx) {
|
|
502
448
|
const queries = ctx.json("queries");
|
|
@@ -1182,8 +1128,8 @@ var metadataVirtualEventCreate = createAnalysisMetaCapabilityCommand({
|
|
|
1182
1128
|
{ name: "event-name", type: "string", required: false, desc: "Virtual event name. Must start with 'ta@'." },
|
|
1183
1129
|
{ name: "event-desc", type: "string", required: false, desc: "Virtual event display name." },
|
|
1184
1130
|
{ name: "remark", type: "string", required: false, desc: "Optional virtual event remark." },
|
|
1185
|
-
{ name: "events", type: "json", required: false, desc: "Event array using snake_case event_name and optional AI-facing filter
|
|
1186
|
-
{ name: "filter", type: "json", required: false, desc: "Optional AI-facing global filter
|
|
1131
|
+
{ name: "events", type: "json", required: false, desc: "Event array using snake_case event_name and optional AI-facing filter conditions. Tag/cluster conditions accept cluster_date_policy and specified_cluster_date." },
|
|
1132
|
+
{ name: "filter", type: "json", required: false, desc: "Optional AI-facing global filter. Tag/cluster conditions accept LATEST, AUTO, or SPECIFIED; SPECIFIED requires specified_cluster_date. Raw taFilters/junctionKind are rejected." },
|
|
1187
1133
|
{ name: "override", type: "boolean", required: false, desc: "Whether to override an existing virtual event rule." }
|
|
1188
1134
|
],
|
|
1189
1135
|
risk: "write",
|
|
@@ -1539,21 +1485,43 @@ var commands5 = [
|
|
|
1539
1485
|
var metric_default = commands5;
|
|
1540
1486
|
|
|
1541
1487
|
// src/commands/te-analysis/meta/asset/search.ts
|
|
1542
|
-
var
|
|
1488
|
+
var assetTypesFlag = {
|
|
1489
|
+
name: "asset-types",
|
|
1490
|
+
type: "json",
|
|
1491
|
+
required: false,
|
|
1492
|
+
desc: "Optional saved analysis asset type narrowing. Omit by default for first-pass asset discovery so dashboards and reports are searched together; pass only when the user explicitly asks for one type or after refining a broad search."
|
|
1493
|
+
};
|
|
1494
|
+
var ownTypesFlag = {
|
|
1495
|
+
name: "own-types",
|
|
1496
|
+
type: "json",
|
|
1497
|
+
required: false,
|
|
1498
|
+
desc: "Optional owner filter. CREATED means owned by the current user; SHARED means visible assets created by others."
|
|
1499
|
+
};
|
|
1500
|
+
var requiredQueriesFlag = {
|
|
1501
|
+
...queriesFlag,
|
|
1502
|
+
required: true,
|
|
1503
|
+
desc: "Required JSON array of 1 to 20 keyword filters. For first-pass asset discovery, use one broad search without --asset-types so results can include both dashboards and reports."
|
|
1504
|
+
};
|
|
1505
|
+
var analysisAssetSearch = createAnalysisCapabilityCommand({
|
|
1543
1506
|
resource: "asset",
|
|
1544
1507
|
command: "search",
|
|
1545
|
-
capabilityId: "
|
|
1546
|
-
description: "Search
|
|
1508
|
+
capabilityId: "analysis.asset.search",
|
|
1509
|
+
description: "Search visible saved analysis assets by keyword. Default first-pass search should omit --asset-types to cover both dashboards and reports.",
|
|
1547
1510
|
flags: [
|
|
1548
1511
|
projectIdFlag,
|
|
1549
|
-
|
|
1512
|
+
requiredQueriesFlag,
|
|
1513
|
+
assetTypesFlag,
|
|
1514
|
+
ownTypesFlag,
|
|
1550
1515
|
directoryLimitFlag,
|
|
1551
1516
|
directoryOffsetFlag
|
|
1552
1517
|
],
|
|
1553
1518
|
risk: "read",
|
|
1519
|
+
validate: validateQueriesFlag,
|
|
1554
1520
|
buildInput: (ctx) => compactInput({
|
|
1555
1521
|
...projectInput(ctx),
|
|
1556
|
-
|
|
1522
|
+
queries: optionalJson(ctx, "queries"),
|
|
1523
|
+
asset_types: optionalJson(ctx, "asset-types"),
|
|
1524
|
+
own_types: optionalJson(ctx, "own-types"),
|
|
1557
1525
|
limit: optionalNumber(ctx, "limit"),
|
|
1558
1526
|
offset: optionalNumber(ctx, "offset")
|
|
1559
1527
|
})
|
|
@@ -1656,13 +1624,11 @@ var ruleIdFlag = { name: "rule-id", type: "number", required: false, desc: "Gove
|
|
|
1656
1624
|
var ruleNameFlag = { name: "rule-name", type: "string", required: false, desc: "Governance rule name." };
|
|
1657
1625
|
var commentFlag = { name: "comment", type: "string", required: false, desc: "Governance rule comment." };
|
|
1658
1626
|
var nodeIdsFlag = { name: "node-ids", type: "json", required: false, desc: "Asset node ID JSON array." };
|
|
1659
|
-
var reportsVersionFlag = { name: "reports-version", type: "number", required: false, desc: "Dashboard reports version." };
|
|
1660
|
-
var zoneOffsetFlag = { name: "zone-offset", type: "number", required: false, desc: "Dashboard zone offset." };
|
|
1661
1627
|
var scheduleUiConfigFlag = { name: "schedule-ui-config", type: "json", required: false, desc: "Dashboard schedule UI config JSON." };
|
|
1662
1628
|
var dashboardStatusFlag = { name: "dashboard-status", type: "string", required: false, desc: "Dashboard status." };
|
|
1663
1629
|
var refreshTypeFlag = { name: "refresh-type", type: "number", required: false, desc: "Dashboard refresh type: 1 enabled, 0 disabled." };
|
|
1664
1630
|
var cacheConfigFlag = { name: "cache-config", type: "json", required: false, desc: "Dashboard cache config JSON." };
|
|
1665
|
-
var toUserIdFlag = { name: "to-user-id", type: "number", required:
|
|
1631
|
+
var toUserIdFlag = { name: "to-user-id", type: "number", required: false, desc: "Target user ID for handover; required here or as payload.to_user_id." };
|
|
1666
1632
|
var clearHistoryTagFlag = { name: "clear-history-tag", type: "number", required: false, desc: "Whether to clear tag history: 1 yes, 0 no." };
|
|
1667
1633
|
var typeFlag = { name: "type", type: "string", required: false, desc: "Batch operation type." };
|
|
1668
1634
|
var statusFlag = { name: "status", type: "json", required: false, desc: "Operation status JSON array." };
|
|
@@ -1681,7 +1647,7 @@ var readers = {
|
|
|
1681
1647
|
rule_id: (ctx) => optionalNumber(ctx, "rule-id"),
|
|
1682
1648
|
rule_name: (ctx) => optionalString(ctx, "rule-name"),
|
|
1683
1649
|
comment: (ctx) => optionalString(ctx, "comment"),
|
|
1684
|
-
node_ids: (ctx) =>
|
|
1650
|
+
node_ids: (ctx) => optionalJson(ctx, "node-ids"),
|
|
1685
1651
|
reports_version: (ctx) => optionalNumber(ctx, "reports-version"),
|
|
1686
1652
|
zone_offset: (ctx) => optionalNumber(ctx, "zone-offset"),
|
|
1687
1653
|
schedule_ui_config: (ctx) => optionalJson(ctx, "schedule-ui-config"),
|
|
@@ -1698,37 +1664,79 @@ var readers = {
|
|
|
1698
1664
|
limit: (ctx) => optionalNumber(ctx, "limit"),
|
|
1699
1665
|
offset: (ctx) => optionalNumber(ctx, "offset")
|
|
1700
1666
|
};
|
|
1701
|
-
function assetGovernanceInput(ctx,
|
|
1667
|
+
function assetGovernanceInput(ctx, fields2) {
|
|
1668
|
+
const payload = optionalJson(ctx, "payload");
|
|
1669
|
+
if (payload !== void 0 && (!payload || typeof payload !== "object" || Array.isArray(payload))) {
|
|
1670
|
+
throw new CliValidationError("--payload must be a JSON object.");
|
|
1671
|
+
}
|
|
1672
|
+
if (payload && Object.hasOwn(payload, "payload")) {
|
|
1673
|
+
throw new CliValidationError("--payload must not contain a nested payload field.");
|
|
1674
|
+
}
|
|
1702
1675
|
const input = {
|
|
1703
|
-
...
|
|
1704
|
-
|
|
1676
|
+
...payload,
|
|
1677
|
+
...projectInput(ctx)
|
|
1705
1678
|
};
|
|
1706
|
-
for (const field of
|
|
1707
|
-
|
|
1679
|
+
for (const field of fields2) {
|
|
1680
|
+
const value = readers[field]?.(ctx);
|
|
1681
|
+
if (value !== void 0) input[field] = value;
|
|
1708
1682
|
}
|
|
1709
|
-
|
|
1683
|
+
for (const field of ["node_ids", "searchs", "status"]) {
|
|
1684
|
+
if (input[field] !== void 0 && !Array.isArray(input[field])) {
|
|
1685
|
+
throw new CliValidationError(`${field} must be a JSON array.`);
|
|
1686
|
+
}
|
|
1687
|
+
}
|
|
1688
|
+
if (input.rule !== void 0 && (!input.rule || typeof input.rule !== "object" || Array.isArray(input.rule))) {
|
|
1689
|
+
throw new CliValidationError("rule must be a JSON object.");
|
|
1690
|
+
}
|
|
1691
|
+
if (fields2.includes("to_user_id") && (!Number.isInteger(input.to_user_id) || Number(input.to_user_id) <= 0)) {
|
|
1692
|
+
throw new CliValidationError("to_user_id must be a positive integer; provide --to-user-id or payload.to_user_id.");
|
|
1693
|
+
}
|
|
1694
|
+
return input;
|
|
1710
1695
|
}
|
|
1711
1696
|
|
|
1712
1697
|
// src/core/resource-url.ts
|
|
1713
|
-
|
|
1698
|
+
var LOCAL_BACKEND_PORTS = /* @__PURE__ */ new Set(["8992", "8996"]);
|
|
1699
|
+
function normalizeResourceUrlFields(node, host, sourceHost = host) {
|
|
1714
1700
|
if (!node || typeof node !== "object") return;
|
|
1715
1701
|
const obj = node;
|
|
1716
1702
|
for (const [key, value] of Object.entries(obj)) {
|
|
1717
1703
|
if (typeof value === "string") {
|
|
1718
1704
|
if (/url|link/i.test(key) || value.includes("/#/")) {
|
|
1719
|
-
obj[key] =
|
|
1705
|
+
obj[key] = normalizeResourceUrls(value, host, sourceHost);
|
|
1720
1706
|
}
|
|
1721
1707
|
} else if (value && typeof value === "object") {
|
|
1722
|
-
normalizeResourceUrlFields(value, host);
|
|
1708
|
+
normalizeResourceUrlFields(value, host, sourceHost);
|
|
1723
1709
|
}
|
|
1724
1710
|
}
|
|
1725
1711
|
}
|
|
1726
|
-
function
|
|
1712
|
+
function normalizeResourceUrls(s, host, sourceHost = host) {
|
|
1727
1713
|
const base = host.replace(/\/+$/, "");
|
|
1714
|
+
const sourceBase = sourceHost.replace(/\/+$/, "");
|
|
1715
|
+
if (sourceBase && sourceBase !== base) {
|
|
1716
|
+
s = s.replace(new RegExp(`${escapeRegExp(sourceBase)}/#`, "g"), `${base}/#`);
|
|
1717
|
+
}
|
|
1728
1718
|
s = s.replace(/\]\((\/(?!\/)[^)]*)\)/g, `](${base}$1)`);
|
|
1729
1719
|
if (/^\/(?!\/)/.test(s)) s = base + s;
|
|
1730
1720
|
return s;
|
|
1731
1721
|
}
|
|
1722
|
+
function resolvePublicWebHost(host) {
|
|
1723
|
+
const override = process.env.AE_CLI_PUBLIC_WEB_URL || process.env.AE_CLI_WEB_HOST;
|
|
1724
|
+
if (override?.trim()) {
|
|
1725
|
+
return override.trim().replace(/\/+$/, "");
|
|
1726
|
+
}
|
|
1727
|
+
try {
|
|
1728
|
+
const url = new URL(host);
|
|
1729
|
+
if ((url.hostname === "127.0.0.1" || url.hostname === "localhost") && LOCAL_BACKEND_PORTS.has(url.port)) {
|
|
1730
|
+
url.port = "10010";
|
|
1731
|
+
return url.toString().replace(/\/+$/, "");
|
|
1732
|
+
}
|
|
1733
|
+
} catch {
|
|
1734
|
+
}
|
|
1735
|
+
return host.replace(/\/+$/, "");
|
|
1736
|
+
}
|
|
1737
|
+
function escapeRegExp(value) {
|
|
1738
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
1739
|
+
}
|
|
1732
1740
|
|
|
1733
1741
|
// src/commands/te-analysis/meta/asset/url-get.ts
|
|
1734
1742
|
var analysisMetaAssetUrlGet = createAnalysisMetaCapabilityCommand({
|
|
@@ -1747,7 +1755,7 @@ var analysisMetaAssetUrlGet = createAnalysisMetaCapabilityCommand({
|
|
|
1747
1755
|
|
|
1748
1756
|
// src/commands/te-analysis/meta/asset/index.ts
|
|
1749
1757
|
var commands6 = [
|
|
1750
|
-
|
|
1758
|
+
analysisAssetSearch,
|
|
1751
1759
|
metadataAssetRecentList,
|
|
1752
1760
|
metadataAssetAuthenticationList,
|
|
1753
1761
|
metadataAssetAuthenticationUpdate,
|
|
@@ -2010,9 +2018,9 @@ var metadataCatalogExport = createAnalysisMetaCapabilityCommand({
|
|
|
2010
2018
|
capabilityId: "metadata.catalog.export",
|
|
2011
2019
|
asyncArtifact: {
|
|
2012
2020
|
preflightOutput: preflightCatalogArtifactOutput,
|
|
2013
|
-
materialize: catalogArtifactMaterializer
|
|
2021
|
+
materialize: catalogArtifactMaterializer
|
|
2014
2022
|
},
|
|
2015
|
-
description: "Export the complete accessible analysis metadata catalog to
|
|
2023
|
+
description: "Export the complete accessible analysis metadata catalog to one local JSONL file.",
|
|
2016
2024
|
flags: [projectIdFlag, requestIdFlag, asyncTimeoutSecondsFlag, certificationScopeFlag],
|
|
2017
2025
|
risk: "read",
|
|
2018
2026
|
validate: validateCatalogExportFlags,
|
|
@@ -2094,8 +2102,653 @@ var metadataCatalogList = createAnalysisMetaCapabilityCommand({
|
|
|
2094
2102
|
var commands10 = [metadataCatalogList, metadataCatalogExport];
|
|
2095
2103
|
var catalog_default = commands10;
|
|
2096
2104
|
|
|
2097
|
-
// src/commands/te-analysis/meta/
|
|
2105
|
+
// src/commands/te-analysis/meta/governance-recommendation/export.ts
|
|
2106
|
+
var windowDaysFlag = {
|
|
2107
|
+
name: "window-days",
|
|
2108
|
+
type: "number",
|
|
2109
|
+
required: false,
|
|
2110
|
+
min: 1,
|
|
2111
|
+
max: 365,
|
|
2112
|
+
desc: "Usage window in days. Default: 90."
|
|
2113
|
+
};
|
|
2114
|
+
var limitFlag2 = {
|
|
2115
|
+
name: "limit",
|
|
2116
|
+
type: "number",
|
|
2117
|
+
required: false,
|
|
2118
|
+
min: 1,
|
|
2119
|
+
max: 100,
|
|
2120
|
+
desc: "Maximum hot dashboard evidence packages selected before report and metadata expansion. Default: 20; this is not the business-topic count."
|
|
2121
|
+
};
|
|
2122
|
+
var includeCompletedFlag = {
|
|
2123
|
+
name: "include-completed",
|
|
2124
|
+
type: "boolean",
|
|
2125
|
+
required: false,
|
|
2126
|
+
desc: "Whether to include completed/authenticated context in the same business topic. Default: true; set false only for pending-only review."
|
|
2127
|
+
};
|
|
2128
|
+
var GOVERNANCE_RECOMMENDATION_EXPORT_HELP = [
|
|
2129
|
+
"Customer/Agent material package contract:",
|
|
2130
|
+
"- Requires project_semantic_enable=on. A disabled project returns PROJECT_SEMANTIC_DISABLED before collecting export materials.",
|
|
2131
|
+
"- Use this command as the entry point before asset-certification recommendation display or review-page submission.",
|
|
2132
|
+
"- The command requires a numeric --project-id. If the user provides only a project name, resolve it on the same host with ae-cli project info list before calling export.",
|
|
2133
|
+
"- The response run_id, snapshot_hash, and review_material_package are the handoff package for the Agent.",
|
|
2134
|
+
"- review_material_package should carry candidate_assets, heat evidence, source_link/evidence_links, relations, report definitions, AI-model definitions, target_revision, and hashes needed for review drafting.",
|
|
2135
|
+
"- Dashboard candidates may include optional space_id/space_name. Preserve these fields into the review draft when present; not every dashboard belongs to a space, so never invent or require them.",
|
|
2136
|
+
"- The Agent turns that package into a submit-to-page draft with batch ai_summary, presentation_snapshot, per-item ai_summary/reasons, copied evidence_snapshot, copied source links, and relations.",
|
|
2137
|
+
"- work_units are deterministic evidence containers from Common. They are not final page groups; the Agent clusters selected assets into one or more business-domain topics.",
|
|
2138
|
+
"- For report and SQL items, use packaged evidence_snapshot.analysis first. Call analysis-meta agent-review evidence only for explicit definition/analysis gaps or draft validation.",
|
|
2139
|
+
"- For real page-review submission, start with --limit 20, filter out completed/rejected/deferred/in-flight items, and expand to --limit 50 then --limit 100 only when the remaining pending review assets or visible business domains are too few.",
|
|
2140
|
+
"- Expansion increases business-domain coverage; it must not submit every pending asset found. Keep a daily review capacity target such as 20-50 pending assets, hard cap around 80, and select about 3-6 visible domains.",
|
|
2141
|
+
"- When candidates exceed the cap, rank by impact, heat, user count, dependency breadth, and under-covered domains; keep only direct context needed for selected pending assets and report overflow for later batches.",
|
|
2142
|
+
"- Draft only business domains with pending review assets. Completed/authenticated assets are necessary context under those visible domains, not standalone work and not a reason to display a zero-pending domain.",
|
|
2143
|
+
"- Generate long Agent summaries only for visible business domains and pending review assets; hidden domains and pure authenticated context should keep copied evidence/links without new page-visible narrative.",
|
|
2144
|
+
"- Page submission uses analysis-meta agent-review submit-to-page. governance-recommendation submit is for explicit approval decisions and must not be used to create page drafts."
|
|
2145
|
+
].join("\n");
|
|
2146
|
+
var metadataGovernanceRecommendationExport = createAnalysisMetaCapabilityCommand({
|
|
2147
|
+
resource: "governance-recommendation",
|
|
2148
|
+
command: "export",
|
|
2149
|
+
capabilityId: "metadata.governance_recommendation.export",
|
|
2150
|
+
description: "Export the material package for CLI Agent asset-authentication and metric-recommendation review.",
|
|
2151
|
+
helpText: GOVERNANCE_RECOMMENDATION_EXPORT_HELP,
|
|
2152
|
+
flags: [projectIdFlag, windowDaysFlag, limitFlag2, includeCompletedFlag],
|
|
2153
|
+
risk: "read",
|
|
2154
|
+
buildInput: (ctx) => compactInput({
|
|
2155
|
+
...projectInput(ctx),
|
|
2156
|
+
window_days: optionalNumber(ctx, "window-days"),
|
|
2157
|
+
limit: optionalNumber(ctx, "limit"),
|
|
2158
|
+
include_completed: optionalBoolean(ctx, "include-completed")
|
|
2159
|
+
}),
|
|
2160
|
+
postProcess: (result, _input, ctx) => {
|
|
2161
|
+
normalizeResourceUrlFields(result, resolvePublicWebHost(ctx.host()), ctx.host());
|
|
2162
|
+
return result;
|
|
2163
|
+
}
|
|
2164
|
+
});
|
|
2165
|
+
|
|
2166
|
+
// src/commands/te-analysis/meta/governance-recommendation/submit.ts
|
|
2167
|
+
var runIdFlag = {
|
|
2168
|
+
name: "run-id",
|
|
2169
|
+
type: "string",
|
|
2170
|
+
required: true,
|
|
2171
|
+
desc: "run_id returned by governance-recommendation export."
|
|
2172
|
+
};
|
|
2173
|
+
var snapshotHashFlag = {
|
|
2174
|
+
name: "snapshot-hash",
|
|
2175
|
+
type: "string",
|
|
2176
|
+
required: false,
|
|
2177
|
+
desc: "Authentication snapshot hash returned by governance-recommendation export."
|
|
2178
|
+
};
|
|
2179
|
+
var topicIdFlag = {
|
|
2180
|
+
name: "topic-id",
|
|
2181
|
+
type: "string",
|
|
2182
|
+
required: false,
|
|
2183
|
+
desc: "Optional CLI Agent business-domain ID. Dashboard-seeded evidence may submit only topic-name."
|
|
2184
|
+
};
|
|
2185
|
+
var topicNameFlag = {
|
|
2186
|
+
name: "topic-name",
|
|
2187
|
+
type: "string",
|
|
2188
|
+
required: true,
|
|
2189
|
+
desc: "CLI Agent business-domain display name."
|
|
2190
|
+
};
|
|
2191
|
+
var decisionsFlag = {
|
|
2192
|
+
name: "decisions",
|
|
2193
|
+
type: "json",
|
|
2194
|
+
required: true,
|
|
2195
|
+
desc: "Approval decisions JSON array for one CLI Agent topic. Each item uses item_type asset or metric_candidate and decision APPROVE, REJECT, or SKIP."
|
|
2196
|
+
};
|
|
2197
|
+
var windowDaysFlag2 = {
|
|
2198
|
+
name: "window-days",
|
|
2199
|
+
type: "number",
|
|
2200
|
+
required: false,
|
|
2201
|
+
min: 1,
|
|
2202
|
+
max: 365,
|
|
2203
|
+
desc: "Usage window in days for server-side metric candidate re-scan. Default: 90."
|
|
2204
|
+
};
|
|
2205
|
+
var limitFlag3 = {
|
|
2206
|
+
name: "limit",
|
|
2207
|
+
type: "number",
|
|
2208
|
+
required: false,
|
|
2209
|
+
min: 1,
|
|
2210
|
+
max: 100,
|
|
2211
|
+
desc: "Dashboard limit for server-side metric candidate re-scan. Default: 20."
|
|
2212
|
+
};
|
|
2213
|
+
var metadataGovernanceRecommendationSubmit = createAnalysisMetaCapabilityCommand({
|
|
2214
|
+
resource: "governance-recommendation",
|
|
2215
|
+
command: "submit",
|
|
2216
|
+
capabilityId: "metadata.governance_recommendation.submit",
|
|
2217
|
+
description: "Submit CLI Agent approval decisions for asset authentication and metric recommendation items.",
|
|
2218
|
+
flags: [
|
|
2219
|
+
projectIdFlag,
|
|
2220
|
+
runIdFlag,
|
|
2221
|
+
snapshotHashFlag,
|
|
2222
|
+
topicIdFlag,
|
|
2223
|
+
topicNameFlag,
|
|
2224
|
+
windowDaysFlag2,
|
|
2225
|
+
limitFlag3,
|
|
2226
|
+
decisionsFlag
|
|
2227
|
+
],
|
|
2228
|
+
risk: "write",
|
|
2229
|
+
buildInput: (ctx) => compactInput({
|
|
2230
|
+
...projectInput(ctx),
|
|
2231
|
+
run_id: ctx.str("run-id"),
|
|
2232
|
+
snapshot_hash: optionalString(ctx, "snapshot-hash"),
|
|
2233
|
+
topic_id: optionalString(ctx, "topic-id"),
|
|
2234
|
+
topic_name: ctx.str("topic-name"),
|
|
2235
|
+
window_days: optionalNumber(ctx, "window-days"),
|
|
2236
|
+
limit: optionalNumber(ctx, "limit"),
|
|
2237
|
+
decisions: ctx.json("decisions")
|
|
2238
|
+
})
|
|
2239
|
+
});
|
|
2240
|
+
|
|
2241
|
+
// src/commands/te-analysis/meta/governance-recommendation/decisions.ts
|
|
2242
|
+
var runIdFlag2 = {
|
|
2243
|
+
name: "run-id",
|
|
2244
|
+
type: "string",
|
|
2245
|
+
required: false,
|
|
2246
|
+
desc: "Optional run_id filter."
|
|
2247
|
+
};
|
|
2248
|
+
var limitFlag4 = {
|
|
2249
|
+
name: "limit",
|
|
2250
|
+
type: "number",
|
|
2251
|
+
required: false,
|
|
2252
|
+
min: 1,
|
|
2253
|
+
max: 500,
|
|
2254
|
+
desc: "Maximum rows returned. Default: 100."
|
|
2255
|
+
};
|
|
2256
|
+
var metadataGovernanceRecommendationDecisions = createAnalysisMetaCapabilityCommand({
|
|
2257
|
+
resource: "governance-recommendation",
|
|
2258
|
+
command: "decisions",
|
|
2259
|
+
capabilityId: "metadata.governance_recommendation.decisions",
|
|
2260
|
+
description: "List recent CLI Agent recommendation approval decisions.",
|
|
2261
|
+
flags: [projectIdFlag, runIdFlag2, limitFlag4],
|
|
2262
|
+
risk: "read",
|
|
2263
|
+
buildInput: (ctx) => compactInput({
|
|
2264
|
+
...projectInput(ctx),
|
|
2265
|
+
run_id: optionalString(ctx, "run-id"),
|
|
2266
|
+
limit: optionalNumber(ctx, "limit")
|
|
2267
|
+
})
|
|
2268
|
+
});
|
|
2269
|
+
|
|
2270
|
+
// src/commands/te-analysis/meta/governance-recommendation/index.ts
|
|
2098
2271
|
var commands11 = [
|
|
2272
|
+
metadataGovernanceRecommendationExport,
|
|
2273
|
+
metadataGovernanceRecommendationSubmit,
|
|
2274
|
+
metadataGovernanceRecommendationDecisions
|
|
2275
|
+
];
|
|
2276
|
+
var governance_recommendation_default = commands11;
|
|
2277
|
+
|
|
2278
|
+
// src/commands/te-analysis/meta/agent-review/shared.ts
|
|
2279
|
+
var projectFlag = {
|
|
2280
|
+
name: "project-id",
|
|
2281
|
+
type: "number",
|
|
2282
|
+
required: true,
|
|
2283
|
+
min: 1,
|
|
2284
|
+
desc: "Numeric project ID."
|
|
2285
|
+
};
|
|
2286
|
+
var batchFlag = {
|
|
2287
|
+
name: "batch-id",
|
|
2288
|
+
type: "string",
|
|
2289
|
+
required: true,
|
|
2290
|
+
desc: "Review batch ID as a decimal string; preserve all digits."
|
|
2291
|
+
};
|
|
2292
|
+
var clientRequestFlag = {
|
|
2293
|
+
name: "client-request-id",
|
|
2294
|
+
type: "string",
|
|
2295
|
+
required: true,
|
|
2296
|
+
desc: "Stable operation key. Reuse for network replay; use a new key for a new decision or manual retry."
|
|
2297
|
+
};
|
|
2298
|
+
function text(ctx, name) {
|
|
2299
|
+
const value = ctx.str(name);
|
|
2300
|
+
if (!value.trim()) throw new Error(`--${name} must not be empty.`);
|
|
2301
|
+
return value;
|
|
2302
|
+
}
|
|
2303
|
+
function decimalId(value, name) {
|
|
2304
|
+
if (typeof value !== "string" || !/^[1-9]\d*$/.test(value) || BigInt(value) > 9223372036854775807n) {
|
|
2305
|
+
throw new Error(`${name} must be a positive signed 64-bit decimal string.`);
|
|
2306
|
+
}
|
|
2307
|
+
return value;
|
|
2308
|
+
}
|
|
2309
|
+
function projectInput2(ctx) {
|
|
2310
|
+
const id = ctx.num("project-id");
|
|
2311
|
+
if (!Number.isInteger(id) || id < 1 || id > 2147483647) {
|
|
2312
|
+
throw new Error("--project-id must be a positive 32-bit integer.");
|
|
2313
|
+
}
|
|
2314
|
+
return { project_id: id };
|
|
2315
|
+
}
|
|
2316
|
+
function batchInput(ctx) {
|
|
2317
|
+
return { ...projectInput2(ctx), batch_id: decimalId(ctx.str("batch-id"), "--batch-id") };
|
|
2318
|
+
}
|
|
2319
|
+
function object(value, name) {
|
|
2320
|
+
if (value === null || typeof value !== "object" || Array.isArray(value)) {
|
|
2321
|
+
throw new Error(`${name} must be a JSON object.`);
|
|
2322
|
+
}
|
|
2323
|
+
return value;
|
|
2324
|
+
}
|
|
2325
|
+
function array(value, name) {
|
|
2326
|
+
if (!Array.isArray(value) || value.length < 1 || value.length > 5e3) {
|
|
2327
|
+
throw new Error(`${name} must contain 1 to 5000 items.`);
|
|
2328
|
+
}
|
|
2329
|
+
return value;
|
|
2330
|
+
}
|
|
2331
|
+
function fields(value, allowed, name) {
|
|
2332
|
+
const unknown = Object.keys(value).filter((key) => !allowed.includes(key));
|
|
2333
|
+
if (unknown.length) throw new Error(`${name} has unsupported fields: ${unknown.join(", ")}.`);
|
|
2334
|
+
}
|
|
2335
|
+
function unique(values, name) {
|
|
2336
|
+
if (new Set(values).size !== values.length) throw new Error(`${name} must be unique.`);
|
|
2337
|
+
}
|
|
2338
|
+
|
|
2339
|
+
// src/commands/te-analysis/meta/agent-review/submit-to-page.ts
|
|
2340
|
+
import { readFileSync } from "fs";
|
|
2341
|
+
var supportedTargetTypes = /* @__PURE__ */ new Set([
|
|
2342
|
+
"dashboard",
|
|
2343
|
+
"report",
|
|
2344
|
+
"event",
|
|
2345
|
+
"event_prop",
|
|
2346
|
+
"user_prop",
|
|
2347
|
+
"user_tag",
|
|
2348
|
+
"user_cluster",
|
|
2349
|
+
"metric"
|
|
2350
|
+
]);
|
|
2351
|
+
var SUBMIT_TO_PAGE_HELP = [
|
|
2352
|
+
"Customer/Agent review-page draft contract:",
|
|
2353
|
+
"- Normal flow: governance-recommendation export -> Agent builds ai_summary/presentation_snapshot/item reasons -> submit-to-page --input-file -> review page batch and site notification.",
|
|
2354
|
+
"- This command creates an asset certification review draft for humans. It never approves, certifies, retries, or creates metrics.",
|
|
2355
|
+
"- Use --input-file for real drafts. The file is JSON; --project-id and --client-request-id come from CLI flags so replays keep one stable operation key.",
|
|
2356
|
+
"- Build the file from review_material_package, preserving candidate assets, heat evidence, source_link/evidence_links, relations, report/AI-model definitions, target_revision, and hashes.",
|
|
2357
|
+
"- For dashboard items, preserve optional space_id/space_name from the material package into evidence_snapshot.definition.config when present. Not every dashboard has a space; do not invent or require one.",
|
|
2358
|
+
"- For recurring recommendation jobs, build the draft from the latest sufficient export: start at top-20 hot dashboards, expand to top-50/top-100 only when filtering leaves too few pending review assets or visible business domains, and record the final scope in batch ai_summary.",
|
|
2359
|
+
"- Expansion is for coverage, not unlimited workload. Target about 20-50 pending assets per daily batch, cap around 80, and balance roughly 3-6 visible domains with per-domain quotas before adding context.",
|
|
2360
|
+
"- If more pending candidates exist, submit the ranked slice and record overflow counts/domains in batch ai_summary for later batches.",
|
|
2361
|
+
"- presentation_snapshot should display only business-domain topics that contain pending review assets. Authenticated/completed assets may appear as context under those topics, but must not create standalone zero-pending topics.",
|
|
2362
|
+
"- Do not author long page-visible AI summaries for hidden topics or pure authenticated context. Copy evidence, links, signals, and relations for context; spend Agent interpretation on visible domains and pending review assets.",
|
|
2363
|
+
"- Scripts may assemble transport JSON and copy evidence, but page-visible ai_summary and analysis_explanation text must be Agent-written interpretation from verified evidence, not generated boilerplate.",
|
|
2364
|
+
"- Follow agent_review_preflight.md: independent Agent review, at most 3 corrections, then submit with unresolved-quality warnings only when already authorized. LOCAL_ONLY never submits. Business meaning and visible-text quality are Agent review responsibilities; this command enforces only transport structure and evidence references.",
|
|
2365
|
+
"- Follow agent_review_priorities_comparisons.md: item ai_summary includes recommendation.priority/priority_reason/evidence_refs, classified comparisons with both-side evidence, and comparison_review coverage. LOW is review urgency, not a defer decision; only POSSIBLE_CONFLICT merits a conflict badge. These assessments share the same 3-correction budget.",
|
|
2366
|
+
"- presentation_snapshot.topics is one or more business-domain topics. Each topic must use groups[].items; do not use top-level topics[].items or raw Common work_units as the page grouping.",
|
|
2367
|
+
"- relations should let the page render dashboard -> report -> metadata with contains/uses edges. Use an empty relations array only when the package truly has no known parent-child evidence.",
|
|
2368
|
+
"- Each submitted item must keep source_link or evidence_links[].url so reviewers can jump to source evidence.",
|
|
2369
|
+
"- item.ai_summary.summary is the per-item recommendation reason. It must cite concrete item evidence, not generic review boilerplate. batch ai_summary.summary is only the batch overview.",
|
|
2370
|
+
"- For reports and SQL reports, item.ai_summary.analysis_explanation must explain reviewer-readable calculations or measures from packaged evidence_snapshot.analysis. A purpose-only summary is incomplete and is rejected locally before dispatch.",
|
|
2371
|
+
"- Reviewer-visible text should follow the project-KB source style: one business Chinese Agent summary that explains purpose, calculation caliber, filters, time scope, boundaries, and concrete reviewer questions. Keep raw SQL, parser labels, temporary aliases, parameter placeholders, hashes, and evidence paths in evidence_snapshot only; independent Agent preflight flags visible implementation terms as quality findings.",
|
|
2372
|
+
"- The command output includes review_page_url when review_url is present. Return review_page_url to the user; do not prepend the Common/API host to review_url yourself.",
|
|
2373
|
+
"",
|
|
2374
|
+
"Input-file JSON shape:",
|
|
2375
|
+
"{",
|
|
2376
|
+
' "review_type": "ASSET_GOVERNANCE",',
|
|
2377
|
+
' "schema_version": "1.0",',
|
|
2378
|
+
' "title": "<review batch title>",',
|
|
2379
|
+
' "source_run_id": "<export.run_id>",',
|
|
2380
|
+
' "source_task_id": "<optional preauthorized task id>",',
|
|
2381
|
+
' "ai_summary": { "summary": "<batch overview>" },',
|
|
2382
|
+
' "presentation_snapshot": {',
|
|
2383
|
+
' "project": { "id": 1, "name": "<project name>" },',
|
|
2384
|
+
' "evidenceDate": "YYYY-MM-DD",',
|
|
2385
|
+
' "topics": [{',
|
|
2386
|
+
' "id": "<business-domain-id>",',
|
|
2387
|
+
' "name": "<business-domain-name>",',
|
|
2388
|
+
' "groups": [{',
|
|
2389
|
+
' "id": "<second-level-group-id>",',
|
|
2390
|
+
' "name": "<second-level group or source dashboard>",',
|
|
2391
|
+
' "items": [{ "id": "<client_item_id>" }]',
|
|
2392
|
+
" }]",
|
|
2393
|
+
" }],",
|
|
2394
|
+
' "relations": [{ "parent": "<dashboard item id>", "child": "<report item id>", "type": "contains" }, { "parent": "<report item id>", "child": "<metadata item id>", "type": "uses" }],',
|
|
2395
|
+
' "analysisByItem": {}',
|
|
2396
|
+
" },",
|
|
2397
|
+
' "items": [{',
|
|
2398
|
+
' "client_item_id": "<stable item id used by presentation_snapshot>",',
|
|
2399
|
+
' "target_ref": { "type": "dashboard|report|event|event_prop|user_prop|user_tag|user_cluster|metric", "key": "<lossless target key>" },',
|
|
2400
|
+
' "action_type": "CERTIFY",',
|
|
2401
|
+
' "proposal_payload": { "authentication_status": 1 },',
|
|
2402
|
+
' "source_link": "<copied source URL>",',
|
|
2403
|
+
' "evidence_links": [{ "label": "<source label>", "url": "<copied evidence URL>" }],',
|
|
2404
|
+
' "evidence_snapshot": { "analysis": "<Common packaged evidence when available>", "target_revision": "<definition version/hash>" },',
|
|
2405
|
+
' "ai_summary": {',
|
|
2406
|
+
' "summary": "<item reason with evidence basis and risks>",',
|
|
2407
|
+
' "analysis_explanation": {',
|
|
2408
|
+
' "business_purpose": "<what the reviewer uses this asset for>",',
|
|
2409
|
+
' "measures": [{ "statement": "<measure explanation>", "evidence_refs": ["evidence_snapshot.analysis..."], "inferred": false }],',
|
|
2410
|
+
' "calculations": [{ "statement": "<formula or aggregation explanation>", "evidence_refs": ["evidence_snapshot.analysis..."], "inferred": false }],',
|
|
2411
|
+
' "filters": [], "time_scope": [], "dimensions": [], "query_columns": [],',
|
|
2412
|
+
' "limitations": [], "open_questions": []',
|
|
2413
|
+
" }",
|
|
2414
|
+
" }",
|
|
2415
|
+
" }]",
|
|
2416
|
+
"}"
|
|
2417
|
+
].join("\n");
|
|
2418
|
+
var agentReviewSubmitToPage = createAnalysisMetaCapabilityCommand({
|
|
2419
|
+
resource: "agent-review",
|
|
2420
|
+
command: "submit-to-page",
|
|
2421
|
+
capabilityId: "metadata.agent_review.create",
|
|
2422
|
+
description: "Submit evidence-backed asset proposals to a review page without approving or certifying assets.",
|
|
2423
|
+
helpText: SUBMIT_TO_PAGE_HELP,
|
|
2424
|
+
risk: "write",
|
|
2425
|
+
flags: [
|
|
2426
|
+
projectFlag,
|
|
2427
|
+
clientRequestFlag,
|
|
2428
|
+
{ name: "input-file", type: "string", required: false, sensitive: true, desc: "Local JSON draft generated from review_material_package; includes ai_summary, presentation_snapshot.topics[].groups, copied evidence/source links, and items." },
|
|
2429
|
+
{ name: "title", type: "string", required: false, desc: "Review batch title." },
|
|
2430
|
+
{ name: "source-run-id", type: "string", required: false, desc: "Evidence run that produced this proposal." },
|
|
2431
|
+
{ name: "source-task-id", type: "string", desc: "Optional preauthorized task ID." },
|
|
2432
|
+
{ name: "ai-summary", type: "json", required: false, desc: "Evidence-backed batch summary object." },
|
|
2433
|
+
{ name: "presentation-snapshot", type: "json", required: false, desc: "Review page packet with business-domain topics, groups[].items, relations, stable client_item_id references, and real evidence links." },
|
|
2434
|
+
{ name: "items", type: "json", required: false, desc: "1 to 5000 CERTIFY proposals with client_item_id, target_ref, source/evidence links, proposal_payload, item ai_summary/reasons, and evidence_snapshot." }
|
|
2435
|
+
],
|
|
2436
|
+
buildInput: (ctx) => {
|
|
2437
|
+
const publicWebHost = resolvePublicWebHost(ctx.host());
|
|
2438
|
+
const file = ctx.str("input-file");
|
|
2439
|
+
if (file) {
|
|
2440
|
+
const input = object(JSON.parse(readFileSync(file, "utf8")), "--input-file");
|
|
2441
|
+
return normalizeSubmitInput(validateInput({
|
|
2442
|
+
...input,
|
|
2443
|
+
...projectInput2(ctx),
|
|
2444
|
+
client_request_id: text(ctx, "client-request-id")
|
|
2445
|
+
}), publicWebHost, ctx.host());
|
|
2446
|
+
}
|
|
2447
|
+
const title = text(ctx, "title");
|
|
2448
|
+
const sourceRunId = text(ctx, "source-run-id");
|
|
2449
|
+
if (!title || !sourceRunId || !ctx.str("ai-summary") || !ctx.str("presentation-snapshot") || !ctx.str("items")) {
|
|
2450
|
+
throw new Error("Pass --input-file, or pass --title, --source-run-id, --ai-summary, --presentation-snapshot, and --items together.");
|
|
2451
|
+
}
|
|
2452
|
+
return normalizeSubmitInput(validateInput({
|
|
2453
|
+
...projectInput2(ctx),
|
|
2454
|
+
review_type: "ASSET_GOVERNANCE",
|
|
2455
|
+
schema_version: "1.0",
|
|
2456
|
+
client_request_id: text(ctx, "client-request-id"),
|
|
2457
|
+
title,
|
|
2458
|
+
source_run_id: sourceRunId,
|
|
2459
|
+
...ctx.str("source-task-id") ? { source_task_id: text(ctx, "source-task-id") } : {},
|
|
2460
|
+
ai_summary: object(ctx.json("ai-summary"), "--ai-summary"),
|
|
2461
|
+
presentation_snapshot: object(ctx.json("presentation-snapshot"), "--presentation-snapshot"),
|
|
2462
|
+
items: ctx.json("items")
|
|
2463
|
+
}), publicWebHost, ctx.host());
|
|
2464
|
+
},
|
|
2465
|
+
postProcess: (result, _input, ctx) => normalizeSubmitResult(result, resolvePublicWebHost(ctx.host()), ctx.host())
|
|
2466
|
+
});
|
|
2467
|
+
function validateInput(input) {
|
|
2468
|
+
const items = array(input.items, "items").map((value) => {
|
|
2469
|
+
const item = object(value, "items[]");
|
|
2470
|
+
fields(item, [
|
|
2471
|
+
"client_item_id",
|
|
2472
|
+
"target_ref",
|
|
2473
|
+
"action_type",
|
|
2474
|
+
"proposal_payload",
|
|
2475
|
+
"ai_summary",
|
|
2476
|
+
"evidence_snapshot",
|
|
2477
|
+
"source_link",
|
|
2478
|
+
"evidence_links"
|
|
2479
|
+
], "items[]");
|
|
2480
|
+
if (typeof item.client_item_id !== "string" || !item.client_item_id.trim()) {
|
|
2481
|
+
throw new Error("items[].client_item_id must be a nonempty string.");
|
|
2482
|
+
}
|
|
2483
|
+
const target = object(item.target_ref, "items[].target_ref");
|
|
2484
|
+
const targetType = typeof target.type === "string" ? target.type.trim() : "";
|
|
2485
|
+
const targetKey = typeof target.key === "string" ? target.key.trim() : "";
|
|
2486
|
+
if (!targetType || !targetKey) {
|
|
2487
|
+
throw new Error("items[].target_ref requires nonempty string type and key.");
|
|
2488
|
+
}
|
|
2489
|
+
if (!supportedTargetTypes.has(targetType)) {
|
|
2490
|
+
throw new Error("items[].target_ref.type must be one of dashboard, report, event, event_prop, user_prop, user_tag, user_cluster, metric.");
|
|
2491
|
+
}
|
|
2492
|
+
const proposal = object(item.proposal_payload, "items[].proposal_payload");
|
|
2493
|
+
fields(proposal, ["authentication_status"], "items[].proposal_payload");
|
|
2494
|
+
if (item.action_type !== "CERTIFY" || proposal.authentication_status !== 1) {
|
|
2495
|
+
throw new Error("Only CERTIFY with authentication_status=1 is supported by the review page.");
|
|
2496
|
+
}
|
|
2497
|
+
const aiSummary = object(item.ai_summary, "items[].ai_summary");
|
|
2498
|
+
const evidenceSnapshot = object(item.evidence_snapshot, "items[].evidence_snapshot");
|
|
2499
|
+
validateItemAiSummary(aiSummary, `items[${String(item.client_item_id)}].ai_summary`);
|
|
2500
|
+
if (targetType === "report") {
|
|
2501
|
+
validateReportAnalysis(aiSummary, evidenceSnapshot, `items[${String(item.client_item_id)}]`);
|
|
2502
|
+
}
|
|
2503
|
+
validateEvidenceLinks(item);
|
|
2504
|
+
return item;
|
|
2505
|
+
});
|
|
2506
|
+
unique(items.map((item) => item.client_item_id), "client_item_id");
|
|
2507
|
+
fields(input, [
|
|
2508
|
+
"project_id",
|
|
2509
|
+
"review_type",
|
|
2510
|
+
"schema_version",
|
|
2511
|
+
"client_request_id",
|
|
2512
|
+
"title",
|
|
2513
|
+
"source_run_id",
|
|
2514
|
+
"source_task_id",
|
|
2515
|
+
"ai_summary",
|
|
2516
|
+
"presentation_snapshot",
|
|
2517
|
+
"items"
|
|
2518
|
+
], "submit-to-page input");
|
|
2519
|
+
object(input.ai_summary, "ai_summary");
|
|
2520
|
+
validatePresentation(object(input.presentation_snapshot, "presentation_snapshot"), new Set(items.map((item) => item.client_item_id)));
|
|
2521
|
+
if (input.review_type !== "ASSET_GOVERNANCE" || input.schema_version !== "1.0") {
|
|
2522
|
+
throw new Error("submit-to-page input requires review_type=ASSET_GOVERNANCE and schema_version=1.0.");
|
|
2523
|
+
}
|
|
2524
|
+
return { ...input, items };
|
|
2525
|
+
}
|
|
2526
|
+
function validateItemAiSummary(aiSummary, name) {
|
|
2527
|
+
if (!meaningfulText(aiSummary.summary)) {
|
|
2528
|
+
throw new Error(`${name}.summary must be a nonempty string.`);
|
|
2529
|
+
}
|
|
2530
|
+
}
|
|
2531
|
+
function validateReportAnalysis(aiSummary, evidenceSnapshot, name) {
|
|
2532
|
+
const analysis = object(evidenceSnapshot.analysis, `${name}.evidence_snapshot.analysis`);
|
|
2533
|
+
if (!meaningfulText(evidenceSnapshot.target_revision)) {
|
|
2534
|
+
throw new Error(`${name}.evidence_snapshot.target_revision is required for report drafts.`);
|
|
2535
|
+
}
|
|
2536
|
+
const explanation = object(aiSummary.analysis_explanation, `${name}.ai_summary.analysis_explanation`);
|
|
2537
|
+
const evidenceRefs = [
|
|
2538
|
+
...explanationRows(explanation.measures, `${name}.ai_summary.analysis_explanation.measures`),
|
|
2539
|
+
...explanationRows(explanation.calculations, `${name}.ai_summary.analysis_explanation.calculations`)
|
|
2540
|
+
].filter((row) => meaningfulText(row.statement)).flatMap((row) => evidenceRefList(row.evidence_refs));
|
|
2541
|
+
if (!evidenceRefs.some((ref) => resolvesAnalysisPath(analysis, ref))) {
|
|
2542
|
+
throw new Error(`${name} report analysis_explanation requires calculations or measures with resolvable evidence_snapshot.analysis refs.`);
|
|
2543
|
+
}
|
|
2544
|
+
}
|
|
2545
|
+
function explanationRows(value, name) {
|
|
2546
|
+
if (value === void 0) return [];
|
|
2547
|
+
if (!Array.isArray(value)) throw new Error(`${name} must be an array.`);
|
|
2548
|
+
return value.map((entry) => object(entry, `${name}[]`));
|
|
2549
|
+
}
|
|
2550
|
+
function evidenceRefList(value) {
|
|
2551
|
+
if (!Array.isArray(value)) return [];
|
|
2552
|
+
return value.filter((entry) => typeof entry === "string" && entry.trim().length > 0);
|
|
2553
|
+
}
|
|
2554
|
+
function meaningfulText(value) {
|
|
2555
|
+
return typeof value === "string" ? value.trim() : "";
|
|
2556
|
+
}
|
|
2557
|
+
function resolvesAnalysisPath(analysis, path) {
|
|
2558
|
+
const prefix = "evidence_snapshot.analysis";
|
|
2559
|
+
if (path === prefix) return true;
|
|
2560
|
+
if (!path.startsWith(`${prefix}.`) && !path.startsWith(`${prefix}[`)) return false;
|
|
2561
|
+
const suffix = path.slice(prefix.length);
|
|
2562
|
+
const matcher = /(?:\.([A-Za-z0-9_$-]+)|\[(\d+)\])/g;
|
|
2563
|
+
let index = 0;
|
|
2564
|
+
let current = analysis;
|
|
2565
|
+
for (let match = matcher.exec(suffix); match; match = matcher.exec(suffix)) {
|
|
2566
|
+
if (match.index !== index) return false;
|
|
2567
|
+
index += match[0].length;
|
|
2568
|
+
const [, key, arrayIndex] = match;
|
|
2569
|
+
if (arrayIndex !== void 0) {
|
|
2570
|
+
if (!Array.isArray(current)) return false;
|
|
2571
|
+
current = current[Number(arrayIndex)];
|
|
2572
|
+
} else {
|
|
2573
|
+
if (current === null || typeof current !== "object" || Array.isArray(current)) return false;
|
|
2574
|
+
current = current[key];
|
|
2575
|
+
}
|
|
2576
|
+
if (current === void 0) return false;
|
|
2577
|
+
}
|
|
2578
|
+
return index === suffix.length;
|
|
2579
|
+
}
|
|
2580
|
+
function validateEvidenceLinks(item) {
|
|
2581
|
+
const sourceLink = typeof item.source_link === "string" && item.source_link.trim();
|
|
2582
|
+
let evidenceLink = false;
|
|
2583
|
+
if ("evidence_links" in item) {
|
|
2584
|
+
evidenceLink = array(item.evidence_links, "items[].evidence_links").some((value) => {
|
|
2585
|
+
const link = object(value, "items[].evidence_links[]");
|
|
2586
|
+
return typeof link.url === "string" && !!link.url.trim();
|
|
2587
|
+
});
|
|
2588
|
+
}
|
|
2589
|
+
if (!sourceLink && !evidenceLink) {
|
|
2590
|
+
throw new Error("items[] must include source_link or evidence_links[].url so reviewers can open source evidence.");
|
|
2591
|
+
}
|
|
2592
|
+
}
|
|
2593
|
+
function validatePresentation(presentation, itemIds) {
|
|
2594
|
+
const displayed = /* @__PURE__ */ new Set();
|
|
2595
|
+
for (const topicValue of array(presentation.topics, "presentation_snapshot.topics")) {
|
|
2596
|
+
const topic = object(topicValue, "presentation_snapshot.topics[]");
|
|
2597
|
+
if ("items" in topic) {
|
|
2598
|
+
throw new Error("presentation_snapshot.topics[] must use groups[].items, not top-level items.");
|
|
2599
|
+
}
|
|
2600
|
+
for (const groupValue of array(topic.groups, "presentation_snapshot.topics[].groups")) {
|
|
2601
|
+
const group = object(groupValue, "presentation_snapshot.topics[].groups[]");
|
|
2602
|
+
if (typeof group.id !== "string" || !group.id.trim() || typeof group.name !== "string" || !group.name.trim()) {
|
|
2603
|
+
throw new Error("presentation_snapshot.topics[].groups[] requires nonempty string id and name.");
|
|
2604
|
+
}
|
|
2605
|
+
for (const itemValue of array(group.items, "presentation_snapshot.topics[].groups[].items")) {
|
|
2606
|
+
const item = object(itemValue, "presentation_snapshot.topics[].groups[].items[]");
|
|
2607
|
+
if (typeof item.id !== "string" || !item.id.trim()) {
|
|
2608
|
+
throw new Error("presentation_snapshot display items require nonempty string id.");
|
|
2609
|
+
}
|
|
2610
|
+
if (!itemIds.has(item.id)) {
|
|
2611
|
+
throw new Error("presentation_snapshot references an unknown client_item_id.");
|
|
2612
|
+
}
|
|
2613
|
+
displayed.add(item.id);
|
|
2614
|
+
}
|
|
2615
|
+
}
|
|
2616
|
+
}
|
|
2617
|
+
for (const id of itemIds) {
|
|
2618
|
+
if (!displayed.has(String(id))) {
|
|
2619
|
+
throw new Error("presentation_snapshot must display every submitted item under topics[].groups[].items.");
|
|
2620
|
+
}
|
|
2621
|
+
}
|
|
2622
|
+
}
|
|
2623
|
+
function normalizeSubmitInput(input, publicWebHost, sourceHost) {
|
|
2624
|
+
normalizeResourceUrlFields(input, publicWebHost, sourceHost);
|
|
2625
|
+
return input;
|
|
2626
|
+
}
|
|
2627
|
+
function normalizeSubmitResult(result, publicWebHost, sourceHost) {
|
|
2628
|
+
normalizeResourceUrlFields(result, publicWebHost, sourceHost);
|
|
2629
|
+
if (result && typeof result === "object" && !Array.isArray(result)) {
|
|
2630
|
+
const data = result;
|
|
2631
|
+
if (typeof data.review_url === "string" && data.review_url.trim()) {
|
|
2632
|
+
data.review_page_url = normalizeResourceUrls(data.review_url, publicWebHost, sourceHost);
|
|
2633
|
+
}
|
|
2634
|
+
}
|
|
2635
|
+
return result;
|
|
2636
|
+
}
|
|
2637
|
+
|
|
2638
|
+
// src/commands/te-analysis/meta/agent-review/review.ts
|
|
2639
|
+
var agentReviewReview = createAnalysisMetaCapabilityCommand({
|
|
2640
|
+
resource: "agent-review",
|
|
2641
|
+
command: "review",
|
|
2642
|
+
capabilityId: "metadata.agent_review.review",
|
|
2643
|
+
description: "Record explicit human decisions and execute approved certification proposals.",
|
|
2644
|
+
risk: "write",
|
|
2645
|
+
flags: [
|
|
2646
|
+
projectFlag,
|
|
2647
|
+
batchFlag,
|
|
2648
|
+
clientRequestFlag,
|
|
2649
|
+
{ name: "decisions", type: "json", required: true, desc: "Versioned decisions: item_id (string), version (integer), decision APPROVE/DEFER/REJECT, reason (required for DEFER/REJECT)." }
|
|
2650
|
+
],
|
|
2651
|
+
buildInput: (ctx) => {
|
|
2652
|
+
const decisions = array(ctx.json("decisions"), "--decisions").map((value) => {
|
|
2653
|
+
const decision = object(value, "decisions[]");
|
|
2654
|
+
fields(decision, ["item_id", "version", "decision", "reason"], "decisions[]");
|
|
2655
|
+
decimalId(decision.item_id, "decisions[].item_id");
|
|
2656
|
+
if (!Number.isSafeInteger(decision.version) || Number(decision.version) < 0) {
|
|
2657
|
+
throw new Error("decisions[].version must be a nonnegative safe integer from detail.");
|
|
2658
|
+
}
|
|
2659
|
+
if (!["APPROVE", "DEFER", "REJECT"].includes(String(decision.decision))) {
|
|
2660
|
+
throw new Error("decisions[].decision must be APPROVE, DEFER, or REJECT.");
|
|
2661
|
+
}
|
|
2662
|
+
if (decision.reason !== void 0 && typeof decision.reason !== "string") {
|
|
2663
|
+
throw new Error("decisions[].reason must be a string.");
|
|
2664
|
+
}
|
|
2665
|
+
if (decision.decision !== "APPROVE" && !String(decision.reason ?? "").trim()) {
|
|
2666
|
+
throw new Error("DEFER and REJECT require a nonempty reason.");
|
|
2667
|
+
}
|
|
2668
|
+
return decision;
|
|
2669
|
+
});
|
|
2670
|
+
unique(decisions.map((decision) => decision.item_id), "decisions[].item_id");
|
|
2671
|
+
return { ...batchInput(ctx), client_request_id: text(ctx, "client-request-id"), decisions };
|
|
2672
|
+
}
|
|
2673
|
+
});
|
|
2674
|
+
|
|
2675
|
+
// src/commands/te-analysis/meta/agent-review/retry.ts
|
|
2676
|
+
var agentReviewRetry = createAnalysisMetaCapabilityCommand({
|
|
2677
|
+
resource: "agent-review",
|
|
2678
|
+
command: "retry",
|
|
2679
|
+
capabilityId: "metadata.agent_review.retry",
|
|
2680
|
+
description: "Retry selected failed executions under their existing approvals.",
|
|
2681
|
+
risk: "write",
|
|
2682
|
+
flags: [
|
|
2683
|
+
projectFlag,
|
|
2684
|
+
batchFlag,
|
|
2685
|
+
clientRequestFlag,
|
|
2686
|
+
{ name: "item-ids", type: "json", required: true, desc: "1 to 5000 failed item IDs as decimal strings. Successful items must not be retried." }
|
|
2687
|
+
],
|
|
2688
|
+
buildInput: (ctx) => {
|
|
2689
|
+
const ids = array(ctx.json("item-ids"), "--item-ids").map((id) => decimalId(id, "item_ids[]"));
|
|
2690
|
+
unique(ids, "item_ids");
|
|
2691
|
+
return { ...batchInput(ctx), client_request_id: text(ctx, "client-request-id"), item_ids: ids };
|
|
2692
|
+
}
|
|
2693
|
+
});
|
|
2694
|
+
|
|
2695
|
+
// src/commands/te-analysis/meta/agent-review/evidence.ts
|
|
2696
|
+
var agentReviewEvidence = createAnalysisMetaCapabilityCommand({
|
|
2697
|
+
resource: "agent-review",
|
|
2698
|
+
command: "evidence",
|
|
2699
|
+
capabilityId: "metadata.agent_review.evidence",
|
|
2700
|
+
description: "Read current server-generated asset review evidence before drafting a proposal. Does not submit or certify.",
|
|
2701
|
+
risk: "read",
|
|
2702
|
+
flags: [
|
|
2703
|
+
projectFlag,
|
|
2704
|
+
{ name: "target-type", type: "string", required: true, desc: "Resolved asset type supported by Common, for example report or dashboard." },
|
|
2705
|
+
{ name: "target-key", type: "string", required: true, desc: "Exact resolved asset key as a string; preserve all ID digits and technical names." }
|
|
2706
|
+
],
|
|
2707
|
+
buildInput: (ctx) => ({
|
|
2708
|
+
...projectInput2(ctx),
|
|
2709
|
+
review_type: "ASSET_GOVERNANCE",
|
|
2710
|
+
target_ref: { type: text(ctx, "target-type"), key: text(ctx, "target-key") },
|
|
2711
|
+
action_type: "CERTIFY",
|
|
2712
|
+
proposal_payload: { authentication_status: 1 }
|
|
2713
|
+
})
|
|
2714
|
+
});
|
|
2715
|
+
|
|
2716
|
+
// src/commands/te-analysis/meta/agent-review/index.ts
|
|
2717
|
+
var agentReviewList = createAnalysisMetaCapabilityCommand({
|
|
2718
|
+
resource: "agent-review",
|
|
2719
|
+
command: "list",
|
|
2720
|
+
capabilityId: "metadata.agent_review.list",
|
|
2721
|
+
description: "List recent visible review batches and their current status.",
|
|
2722
|
+
risk: "read",
|
|
2723
|
+
flags: [projectFlag, { name: "limit", type: "number", min: 1, max: 500, default: 20, desc: "Maximum recent batches, from 1 to 500. Default: 20." }],
|
|
2724
|
+
buildInput: (ctx) => {
|
|
2725
|
+
const limit = ctx.str("limit") === "" ? 20 : ctx.num("limit");
|
|
2726
|
+
if (!Number.isInteger(limit) || limit < 1 || limit > 500) throw new Error("--limit must be an integer from 1 to 500.");
|
|
2727
|
+
return { ...projectInput2(ctx), limit };
|
|
2728
|
+
}
|
|
2729
|
+
});
|
|
2730
|
+
var agentReviewDetail = createAnalysisMetaCapabilityCommand({
|
|
2731
|
+
resource: "agent-review",
|
|
2732
|
+
command: "detail",
|
|
2733
|
+
capabilityId: "metadata.agent_review.detail",
|
|
2734
|
+
description: "Read review snapshots, item versions, decisions, and execution status.",
|
|
2735
|
+
risk: "read",
|
|
2736
|
+
flags: [projectFlag, batchFlag],
|
|
2737
|
+
buildInput: batchInput
|
|
2738
|
+
});
|
|
2739
|
+
var agentReviewRecords = createAnalysisMetaCapabilityCommand({
|
|
2740
|
+
resource: "agent-review",
|
|
2741
|
+
command: "records",
|
|
2742
|
+
capabilityId: "metadata.agent_review.records",
|
|
2743
|
+
description: "Read immutable review and execution events for a batch.",
|
|
2744
|
+
risk: "read",
|
|
2745
|
+
flags: [projectFlag, batchFlag],
|
|
2746
|
+
buildInput: batchInput
|
|
2747
|
+
});
|
|
2748
|
+
var agent_review_default = [agentReviewSubmitToPage, agentReviewList, agentReviewDetail, agentReviewRecords, agentReviewReview, agentReviewRetry, agentReviewEvidence];
|
|
2749
|
+
|
|
2750
|
+
// src/commands/te-analysis/meta/index.ts
|
|
2751
|
+
var commands12 = [
|
|
2099
2752
|
...event_default,
|
|
2100
2753
|
...property_default,
|
|
2101
2754
|
...virtual_event_default,
|
|
@@ -2105,9 +2758,11 @@ var commands11 = [
|
|
|
2105
2758
|
...exchange_default,
|
|
2106
2759
|
...super_metadata_default,
|
|
2107
2760
|
...datatable_default,
|
|
2108
|
-
...catalog_default
|
|
2761
|
+
...catalog_default,
|
|
2762
|
+
...governance_recommendation_default,
|
|
2763
|
+
...agent_review_default
|
|
2109
2764
|
];
|
|
2110
|
-
var meta_default =
|
|
2765
|
+
var meta_default = commands12;
|
|
2111
2766
|
|
|
2112
2767
|
// src/commands/te-analysis/meta/asset/usage-list.ts
|
|
2113
2768
|
var analysisMetaAssetUsageList = createAnalysisGovernanceCapabilityCommand({
|
|
@@ -2159,9 +2814,9 @@ var analysisMetaAssetImpactList = createAnalysisGovernanceCapabilityCommand({
|
|
|
2159
2814
|
command: "list",
|
|
2160
2815
|
capabilityId: "governance.asset_impact.list",
|
|
2161
2816
|
description: "List downstream impacts for one asset.",
|
|
2162
|
-
flags: [projectIdFlag, nodeIdFlag,
|
|
2817
|
+
flags: [projectIdFlag, nodeIdFlag, directoryLimitFlag, directoryOffsetFlag, payloadFlag],
|
|
2163
2818
|
risk: "read",
|
|
2164
|
-
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_id", "
|
|
2819
|
+
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_id", "limit", "offset"])
|
|
2165
2820
|
});
|
|
2166
2821
|
|
|
2167
2822
|
// src/commands/te-analysis/meta/asset/query-history-list.ts
|
|
@@ -2170,9 +2825,9 @@ var analysisMetaAssetQueryHistoryList = createAnalysisGovernanceCapabilityComman
|
|
|
2170
2825
|
command: "list",
|
|
2171
2826
|
capabilityId: "governance.asset_query_history.list",
|
|
2172
2827
|
description: "List query history for one asset.",
|
|
2173
|
-
flags: [projectIdFlag, nodeIdFlag,
|
|
2828
|
+
flags: [projectIdFlag, nodeIdFlag, directoryLimitFlag, directoryOffsetFlag, payloadFlag],
|
|
2174
2829
|
risk: "read",
|
|
2175
|
-
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_id", "
|
|
2830
|
+
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_id", "limit", "offset"])
|
|
2176
2831
|
});
|
|
2177
2832
|
|
|
2178
2833
|
// src/commands/te-analysis/meta/asset/rule-schema.ts
|
|
@@ -2236,9 +2891,9 @@ var analysisMetaAssetBatchInfoExport = createAnalysisGovernanceCapabilityCommand
|
|
|
2236
2891
|
command: "batch-info-export",
|
|
2237
2892
|
capabilityId: "governance.asset.batch_export_info",
|
|
2238
2893
|
description: "Batch export asset information.",
|
|
2239
|
-
flags: [projectIdFlag, nodeIdsFlag,
|
|
2894
|
+
flags: [projectIdFlag, nodeIdsFlag, payloadFlag],
|
|
2240
2895
|
risk: "read",
|
|
2241
|
-
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_ids"
|
|
2896
|
+
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_ids"])
|
|
2242
2897
|
});
|
|
2243
2898
|
|
|
2244
2899
|
// src/commands/te-analysis/meta/asset/batch-sql-export.ts
|
|
@@ -2247,9 +2902,9 @@ var analysisMetaAssetBatchSqlExport = createAnalysisGovernanceCapabilityCommand(
|
|
|
2247
2902
|
command: "batch-sql-export",
|
|
2248
2903
|
capabilityId: "governance.asset.batch_export_sql",
|
|
2249
2904
|
description: "Batch export asset SQL definitions.",
|
|
2250
|
-
flags: [projectIdFlag, nodeIdsFlag,
|
|
2905
|
+
flags: [projectIdFlag, nodeIdsFlag, payloadFlag],
|
|
2251
2906
|
risk: "read",
|
|
2252
|
-
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_ids"
|
|
2907
|
+
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_ids"])
|
|
2253
2908
|
});
|
|
2254
2909
|
|
|
2255
2910
|
// src/commands/te-analysis/meta/asset/batch-delete.ts
|
|
@@ -2291,9 +2946,9 @@ var analysisMetaAssetBatchDashboardScheduleFreeze = createAnalysisGovernanceCapa
|
|
|
2291
2946
|
command: "batch-dashboard-schedule-freeze",
|
|
2292
2947
|
capabilityId: "governance.asset.batch_dashboard_schedule_freeze",
|
|
2293
2948
|
description: "Batch freeze dashboard schedules for governed assets.",
|
|
2294
|
-
flags: [projectIdFlag, nodeIdsFlag,
|
|
2949
|
+
flags: [projectIdFlag, nodeIdsFlag, scheduleUiConfigFlag, dashboardStatusFlag, refreshTypeFlag, cacheConfigFlag, payloadFlag],
|
|
2295
2950
|
risk: "write",
|
|
2296
|
-
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_ids", "
|
|
2951
|
+
buildInput: (ctx) => assetGovernanceInput(ctx, ["node_ids", "schedule_ui_config", "dashboard_status", "refresh_type", "cache_config"])
|
|
2297
2952
|
});
|
|
2298
2953
|
|
|
2299
2954
|
// src/commands/te-analysis/meta/asset/batch-handover.ts
|
|
@@ -2331,7 +2986,7 @@ var analysisMetaAssetOperationRecordExport = createAnalysisGovernanceCapabilityC
|
|
|
2331
2986
|
|
|
2332
2987
|
// src/commands/te-analysis/governance/asset-authentication-shared.ts
|
|
2333
2988
|
import { createHash as createHash3, randomBytes as randomBytes3 } from "crypto";
|
|
2334
|
-
import { readFileSync, statSync } from "fs";
|
|
2989
|
+
import { readFileSync as readFileSync2, statSync } from "fs";
|
|
2335
2990
|
import { mkdir as mkdir3, open as open3, rm as rm3 } from "fs/promises";
|
|
2336
2991
|
import { dirname as dirname3, extname as extname3, resolve as resolve3 } from "path";
|
|
2337
2992
|
var ASSET_TYPES = /* @__PURE__ */ new Set([
|
|
@@ -2356,7 +3011,7 @@ var OUTPUT_FIELDS = /* @__PURE__ */ new Set([
|
|
|
2356
3011
|
"user_count90d",
|
|
2357
3012
|
"impact_degree"
|
|
2358
3013
|
]);
|
|
2359
|
-
var
|
|
3014
|
+
var assetTypesFlag2 = {
|
|
2360
3015
|
name: "asset-types",
|
|
2361
3016
|
type: "json",
|
|
2362
3017
|
required: false,
|
|
@@ -2417,7 +3072,7 @@ var authenticationExportOutputFlag = {
|
|
|
2417
3072
|
desc: "Local .jsonl output path. Integrity metadata is written to <output>.meta.json."
|
|
2418
3073
|
};
|
|
2419
3074
|
var authenticationFilterFlags = [
|
|
2420
|
-
|
|
3075
|
+
assetTypesFlag2,
|
|
2421
3076
|
authenticationStatusFilterFlag,
|
|
2422
3077
|
governanceQueriesFlag,
|
|
2423
3078
|
heatCountGtFlag,
|
|
@@ -2539,7 +3194,7 @@ function assetRefsInput(ctx) {
|
|
|
2539
3194
|
if (!statSync(path, { throwIfNoEntry: false })?.isFile()) {
|
|
2540
3195
|
throw new CliValidationError(`--asset-file must be a regular file: ${path}`);
|
|
2541
3196
|
}
|
|
2542
|
-
values =
|
|
3197
|
+
values = readFileSync2(path, "utf8").split(/\r?\n/).filter(Boolean).map((line, index) => {
|
|
2543
3198
|
try {
|
|
2544
3199
|
return JSON.parse(line);
|
|
2545
3200
|
} catch {
|
|
@@ -2672,7 +3327,7 @@ var analysisGovernanceAssetAuthenticationUpdate = createAnalysisGovernanceCapabi
|
|
|
2672
3327
|
});
|
|
2673
3328
|
|
|
2674
3329
|
// src/commands/te-analysis/governance/index.ts
|
|
2675
|
-
var
|
|
3330
|
+
var commands13 = [
|
|
2676
3331
|
analysisGovernanceAssetAuthenticationList,
|
|
2677
3332
|
analysisGovernanceAssetAuthenticationExport,
|
|
2678
3333
|
analysisGovernanceAssetAuthenticationUpdate,
|
|
@@ -2697,7 +3352,7 @@ var commands12 = [
|
|
|
2697
3352
|
analysisMetaAssetOperationRecordList,
|
|
2698
3353
|
analysisMetaAssetOperationRecordExport
|
|
2699
3354
|
];
|
|
2700
|
-
var governance_default =
|
|
3355
|
+
var governance_default = commands13;
|
|
2701
3356
|
|
|
2702
3357
|
// src/commands/te-analysis/report/list.ts
|
|
2703
3358
|
var reportList = createAnalysisCapabilityCommand({
|
|
@@ -2783,7 +3438,7 @@ var REPORT_WRITE_MODEL_TYPE_VALUES = [
|
|
|
2783
3438
|
"tag"
|
|
2784
3439
|
];
|
|
2785
3440
|
var REPORT_WRITE_MODEL_DESCRIPTION = `${AI_MODEL_DESCRIPTION} Report create/update also supports tag for saved tag report data; use tag as the AI-facing spelling.`;
|
|
2786
|
-
var AI_DEFINITION_DESCRIPTION = 'Event metrics: omit optional display_name unless the target command schema explicitly supports it. Funnel step filters use event_property_name (not field) and string-array values, including "true"/"false" for boolean properties. AI-facing model definition JSON. Do not pass raw QP, events, event_view, visual_view, or analysis_query. Distribution filters must be attached to the corresponding distribution_metrics[].filters; do not use top-level filters or relation. For path definitions, global filters support user_property, cluster, and tag only; event_property is not supported. session_unit accepts second (1..999), minute (1..999), or hour (1..24). Do not use day; express one day as session_interval=24 and session_unit=hour. For SQL, a simple query is {"sql":"select ..."}; raw variables use ${name}, while typed params use ${Text:name}, ${Selector:name}, or ${PartDate:name}. PartDate expands to a complete predicate, so write WHERE ${PartDate:d}, not a column followed by the placeholder. A part_date parameter may set boolean use_timezone; it defaults to false and controls whether that parameter uses the query effective timezone. Selector value must match one options[].value. Trino identifiers containing #, $, @, spaces, punctuation, or a reserved word must be delimited with double quotes, for example SELECT "#user_id", "$part_event", "end" FROM ...; single quotes are string literals. For multiline SQL JSON, the decoded sql value must contain a real line break; do not submit a literal \\n sequence outside quoted SQL text. Queries against an event table must include a date-partition predicate on the quoted "$part_date" column, for example WHERE "$part_date" BETWEEN \'2026-07-01\' AND \'2026-07-07\'; the backend rejects event-table SQL without it. The CLI preserves SQL text and never auto-quotes identifiers.';
|
|
3441
|
+
var AI_DEFINITION_DESCRIPTION = 'Event metrics: omit optional display_name unless the target command schema explicitly supports it. Funnel step filters use event_property_name (not field) and string-array values, including "true"/"false" for boolean properties. For tag/cluster filters, cluster_date_policy accepts LATEST (default), AUTO (match the computed result for each analysis date), or SPECIFIED (requires specified_cluster_date in yyyy-MM-dd format). AI-facing model definition JSON. Do not pass raw QP, events, event_view, visual_view, or analysis_query. Distribution filters must be attached to the corresponding distribution_metrics[].filters; do not use top-level filters or relation. For path definitions, global filters support user_property, cluster, and tag only; event_property is not supported. session_unit accepts second (1..999), minute (1..999), or hour (1..24). Do not use day; express one day as session_interval=24 and session_unit=hour. For SQL, a simple query is {"sql":"select ..."}; raw variables use ${name}, while typed params use ${Text:name}, ${Selector:name}, or ${PartDate:name}. PartDate expands to a complete predicate, so write WHERE ${PartDate:d}, not a column followed by the placeholder. A part_date parameter may set boolean use_timezone; it defaults to false and controls whether that parameter uses the query effective timezone. Selector value must match one options[].value. Trino identifiers containing #, $, @, spaces, punctuation, or a reserved word must be delimited with double quotes, for example SELECT "#user_id", "$part_event", "end" FROM ...; single quotes are string literals. For multiline SQL JSON, the decoded sql value must contain a real line break; do not submit a literal \\n sequence outside quoted SQL text. Queries against an event table must include a date-partition predicate on the quoted "$part_date" column, for example WHERE "$part_date" BETWEEN \'2026-07-01\' AND \'2026-07-07\'; the backend rejects event-table SQL without it. The CLI preserves SQL text and never auto-quotes identifiers.';
|
|
2787
3442
|
var REPORT_WRITE_DEFINITION_DESCRIPTION = `${AI_DEFINITION_DESCRIPTION} For model_type=tag, pass a tag report intent such as {"tag":{"tag_name":"vip_users","time_range":{"mode":"recent","unit":"day","value":7}}}. Tags are supported for report create/update and report data, not ad-hoc analysis.`;
|
|
2788
3443
|
function aiModelTypeFlag(required) {
|
|
2789
3444
|
return {
|
|
@@ -2849,7 +3504,7 @@ var metadataResolutionsFlag = {
|
|
|
2849
3504
|
name: "resolutions",
|
|
2850
3505
|
type: "json",
|
|
2851
3506
|
required: false,
|
|
2852
|
-
desc: "Optional user-confirmed metadata bindings keyed by compiler error path. Each value requires raw_value, resource_type, and resource_key.
|
|
3507
|
+
desc: "Optional user-confirmed metadata bindings keyed by compiler error path. Each value requires raw_value, resource_type, and resource_key. Keep each bound field's path and raw_value; fill the confirmed aggregation and other model parameters in the definition."
|
|
2853
3508
|
};
|
|
2854
3509
|
var reportMetadataResolutionsFlag = {
|
|
2855
3510
|
...metadataResolutionsFlag,
|
|
@@ -2872,6 +3527,7 @@ var reportCreate = createAnalysisCapabilityCommand({
|
|
|
2872
3527
|
{ name: "report-name", type: "string", required: true, desc: "Report display name." },
|
|
2873
3528
|
reportWriteModelTypeFlag(true),
|
|
2874
3529
|
reportWriteDefinitionFlag(true),
|
|
3530
|
+
modelDefinitionIntentSnapshotFlag,
|
|
2875
3531
|
reportMetadataResolutionsFlag,
|
|
2876
3532
|
{ name: "report-desc", type: "string", required: false, desc: "Optional report description." },
|
|
2877
3533
|
{ name: "cache-seconds", type: "number", required: false, desc: "Optional cache duration in seconds." },
|
|
@@ -2880,6 +3536,7 @@ var reportCreate = createAnalysisCapabilityCommand({
|
|
|
2880
3536
|
],
|
|
2881
3537
|
risk: "write",
|
|
2882
3538
|
validate: validateReportMetadataResolutions,
|
|
3539
|
+
intentConsistency: { definitionFlag: "definition", modelTypeFlag: "model-type" },
|
|
2883
3540
|
buildInput: (ctx) => compactInput({
|
|
2884
3541
|
...projectInput(ctx),
|
|
2885
3542
|
report_name: ctx.str("report-name"),
|
|
@@ -2922,12 +3579,14 @@ var reportUpdate = createAnalysisCapabilityCommand({
|
|
|
2922
3579
|
{ name: "report-desc", type: "string", required: false, desc: "New report description." },
|
|
2923
3580
|
reportWriteModelTypeFlag(false),
|
|
2924
3581
|
reportWriteDefinitionFlag(false),
|
|
3582
|
+
modelDefinitionIntentSnapshotFlag,
|
|
2925
3583
|
reportMetadataResolutionsFlag,
|
|
2926
3584
|
{ name: "cache-seconds", type: "number", required: false, desc: "Optional cache duration in seconds." },
|
|
2927
3585
|
{ name: "query-duration-ms", type: "number", required: false, desc: "Optional last query duration in milliseconds." }
|
|
2928
3586
|
],
|
|
2929
3587
|
risk: "write",
|
|
2930
3588
|
validate: validateReportUpdate,
|
|
3589
|
+
intentConsistency: { definitionFlag: "definition", modelTypeFlag: "model-type" },
|
|
2931
3590
|
buildInput: (ctx) => compactInput({
|
|
2932
3591
|
...projectInput(ctx),
|
|
2933
3592
|
report_id: ctx.num("report-id"),
|
|
@@ -2957,7 +3616,7 @@ var reportDelete = createAnalysisCapabilityCommand({
|
|
|
2957
3616
|
});
|
|
2958
3617
|
|
|
2959
3618
|
// src/commands/te-analysis/report/index.ts
|
|
2960
|
-
var
|
|
3619
|
+
var commands14 = [
|
|
2961
3620
|
reportList,
|
|
2962
3621
|
reportListExport,
|
|
2963
3622
|
reportGet,
|
|
@@ -2965,10 +3624,43 @@ var commands13 = [
|
|
|
2965
3624
|
reportUpdate,
|
|
2966
3625
|
reportDelete
|
|
2967
3626
|
];
|
|
2968
|
-
var report_default =
|
|
3627
|
+
var report_default = commands14;
|
|
2969
3628
|
|
|
2970
3629
|
// src/commands/te-analysis/report-data/shared.ts
|
|
2971
3630
|
var reportDataZoneOffsetDescription = "Query execution timezone. Omit it to match the report UI for the current user (user selection when available, otherwise project default). Use a fixed UTC offset from -12 through 14, or 99 for local-time mode with no conversion to one fixed UTC offset; 99 is not UTC+99. This is not persisted in the report definition.";
|
|
3631
|
+
var sqlReportParamsDescription = "SQL reports only. First run analysis report get for every target SQL report; each name must exist in every definition.params. For a selector parameter, put the exact UI option label from definition.params[].options[].name in the override value field; never send options[].value or its SQL fragment. Other parameter types use their documented value/range fields. Do not send definition fields such as paramType, selectorItems, options, or use_timezone.";
|
|
3632
|
+
var SQL_SELECTOR_RUNTIME_ERROR_HINT = "If --sql-params overrides a selector, run analysis report get and copy the exact definition.params[].options[].name label into the override value field. Do not pass options[].value or its underlying SQL fragment, and do not guess or automatically rewrite an ambiguous option.";
|
|
3633
|
+
function enrichSqlSelectorRuntimeError(error) {
|
|
3634
|
+
if (!(error instanceof CapabilityGatewayError) || error.code !== "INVALID_REPORT_DEFINITION" || !/selectorName\s+invalid/i.test(error.message)) {
|
|
3635
|
+
return error;
|
|
3636
|
+
}
|
|
3637
|
+
const hint = error.hint ? `${error.hint} ${SQL_SELECTOR_RUNTIME_ERROR_HINT}` : SQL_SELECTOR_RUNTIME_ERROR_HINT;
|
|
3638
|
+
return new CapabilityGatewayError(
|
|
3639
|
+
error.message,
|
|
3640
|
+
error.code,
|
|
3641
|
+
error.httpStatus,
|
|
3642
|
+
hint,
|
|
3643
|
+
error.meta
|
|
3644
|
+
);
|
|
3645
|
+
}
|
|
3646
|
+
async function withSqlSelectorRuntimeErrorHint(operation) {
|
|
3647
|
+
try {
|
|
3648
|
+
return await operation();
|
|
3649
|
+
} catch (error) {
|
|
3650
|
+
throw enrichSqlSelectorRuntimeError(error);
|
|
3651
|
+
}
|
|
3652
|
+
}
|
|
3653
|
+
function withSqlSelectorRuntimeDiagnostics(command) {
|
|
3654
|
+
const validateInput2 = command.validateInput;
|
|
3655
|
+
const dryRun = command.dryRun;
|
|
3656
|
+
const execute = command.execute;
|
|
3657
|
+
return {
|
|
3658
|
+
...command,
|
|
3659
|
+
...validateInput2 ? { validateInput: (ctx) => withSqlSelectorRuntimeErrorHint(() => validateInput2(ctx)) } : {},
|
|
3660
|
+
...dryRun ? { dryRun: (ctx) => withSqlSelectorRuntimeErrorHint(() => dryRun(ctx)) } : {},
|
|
3661
|
+
execute: (ctx) => withSqlSelectorRuntimeErrorHint(() => execute(ctx))
|
|
3662
|
+
};
|
|
3663
|
+
}
|
|
2972
3664
|
function reportDataInput(ctx) {
|
|
2973
3665
|
return compactInput({
|
|
2974
3666
|
...projectInput(ctx),
|
|
@@ -2996,7 +3688,7 @@ function reportDataExportInput(ctx) {
|
|
|
2996
3688
|
}
|
|
2997
3689
|
|
|
2998
3690
|
// src/commands/te-analysis/report-data/run.ts
|
|
2999
|
-
var reportDataRun = createAnalysisCapabilityCommand({
|
|
3691
|
+
var reportDataRun = withSqlSelectorRuntimeDiagnostics(createAnalysisCapabilityCommand({
|
|
3000
3692
|
resource: "report-data",
|
|
3001
3693
|
command: "run",
|
|
3002
3694
|
capabilityId: "analysis.report_data.run",
|
|
@@ -3007,7 +3699,7 @@ var reportDataRun = createAnalysisCapabilityCommand({
|
|
|
3007
3699
|
requestIdFlag,
|
|
3008
3700
|
{ name: "filters", type: "json", required: false, desc: 'Non-SQL analysis models only. SQL-only requests reject this field; mixed batches warn for SQL report_ids that ignore it. AI-facing shape: {"relation":"and","items":[{"field":{"name":"country","type":"user_property"},"operator":"eq","values":["US"]}]}. Never pass QP taFilters.' },
|
|
3009
3701
|
{ name: "group-by", type: "json", required: false, desc: 'Non-SQL analysis models only. SQL-only requests reject this field; mixed batches warn. AI-facing shape: [{"field":{"name":"country","type":"user_property"}}]. Time granularity uses --time-granularity.' },
|
|
3010
|
-
{ name: "sql-params", type: "json", required: false, desc:
|
|
3702
|
+
{ name: "sql-params", type: "json", required: false, desc: sqlReportParamsDescription },
|
|
3011
3703
|
{ name: "start-time", type: "string", required: false, desc: "Non-SQL analysis-model date override start, yyyy-MM-dd. SQL dates must be saved parameters overridden through --sql-params." },
|
|
3012
3704
|
{ name: "end-time", type: "string", required: false, desc: "Non-SQL analysis-model date override end, yyyy-MM-dd. SQL dates must be saved parameters overridden through --sql-params." },
|
|
3013
3705
|
{ name: "time-granularity", type: "string", required: false, desc: "Non-SQL analysis-model time granularity override. SQL accepts only --sql-params." },
|
|
@@ -3021,10 +3713,10 @@ var reportDataRun = createAnalysisCapabilityCommand({
|
|
|
3021
3713
|
risk: "read",
|
|
3022
3714
|
validate: validateClusterQueryRouting,
|
|
3023
3715
|
buildInput: reportDataInput
|
|
3024
|
-
});
|
|
3716
|
+
}));
|
|
3025
3717
|
|
|
3026
3718
|
// src/commands/te-analysis/report-data/export.ts
|
|
3027
|
-
var reportDataExport = createAnalysisCapabilityCommand({
|
|
3719
|
+
var reportDataExport = withSqlSelectorRuntimeDiagnostics(createAnalysisCapabilityCommand({
|
|
3028
3720
|
resource: "report-data",
|
|
3029
3721
|
command: "export",
|
|
3030
3722
|
capabilityId: "analysis.report_data.export",
|
|
@@ -3036,7 +3728,7 @@ var reportDataExport = createAnalysisCapabilityCommand({
|
|
|
3036
3728
|
requestIdFlag,
|
|
3037
3729
|
{ name: "filters", type: "json", required: false, desc: "Non-SQL analysis models only. SQL-only requests reject this field; mixed batches are best-effort. Use AI-facing field intent, never QP taFilters." },
|
|
3038
3730
|
{ name: "group-by", type: "json", required: false, desc: 'Non-SQL analysis models only. SQL-only requests reject this field. Shape: [{"field":{"name":"country","type":"user_property"}}].' },
|
|
3039
|
-
{ name: "sql-params", type: "json", required: false, desc:
|
|
3731
|
+
{ name: "sql-params", type: "json", required: false, desc: sqlReportParamsDescription },
|
|
3040
3732
|
{ name: "start-time", type: "string", required: false, desc: "Non-SQL analysis-model date override start, yyyy-MM-dd. SQL dates use --sql-params." },
|
|
3041
3733
|
{ name: "end-time", type: "string", required: false, desc: "Non-SQL analysis-model date override end, yyyy-MM-dd. SQL dates use --sql-params." },
|
|
3042
3734
|
{ name: "time-granularity", type: "string", required: false, desc: "Non-SQL analysis-model time granularity override. SQL accepts only --sql-params." },
|
|
@@ -3050,14 +3742,14 @@ var reportDataExport = createAnalysisCapabilityCommand({
|
|
|
3050
3742
|
risk: "read",
|
|
3051
3743
|
validate: validateClusterQueryRouting,
|
|
3052
3744
|
buildInput: reportDataExportInput
|
|
3053
|
-
});
|
|
3745
|
+
}));
|
|
3054
3746
|
|
|
3055
3747
|
// src/commands/te-analysis/report-data/index.ts
|
|
3056
|
-
var
|
|
3748
|
+
var commands15 = [
|
|
3057
3749
|
reportDataRun,
|
|
3058
3750
|
reportDataExport
|
|
3059
3751
|
];
|
|
3060
|
-
var report_data_default =
|
|
3752
|
+
var report_data_default = commands15;
|
|
3061
3753
|
|
|
3062
3754
|
// src/commands/te-analysis/report-change-log/list.ts
|
|
3063
3755
|
var reportChangeLogList = createAnalysisCapabilityCommand({
|
|
@@ -3093,11 +3785,11 @@ var reportChangeLogGet = createAnalysisCapabilityCommand({
|
|
|
3093
3785
|
});
|
|
3094
3786
|
|
|
3095
3787
|
// src/commands/te-analysis/report-change-log/index.ts
|
|
3096
|
-
var
|
|
3788
|
+
var commands16 = [
|
|
3097
3789
|
reportChangeLogList,
|
|
3098
3790
|
reportChangeLogGet
|
|
3099
3791
|
];
|
|
3100
|
-
var report_change_log_default =
|
|
3792
|
+
var report_change_log_default = commands16;
|
|
3101
3793
|
|
|
3102
3794
|
// src/commands/te-analysis/report-version/rollback.ts
|
|
3103
3795
|
var reportVersionRollback = createAnalysisCapabilityCommand({
|
|
@@ -3119,10 +3811,10 @@ var reportVersionRollback = createAnalysisCapabilityCommand({
|
|
|
3119
3811
|
});
|
|
3120
3812
|
|
|
3121
3813
|
// src/commands/te-analysis/report-version/index.ts
|
|
3122
|
-
var
|
|
3814
|
+
var commands17 = [
|
|
3123
3815
|
reportVersionRollback
|
|
3124
3816
|
];
|
|
3125
|
-
var report_version_default =
|
|
3817
|
+
var report_version_default = commands17;
|
|
3126
3818
|
|
|
3127
3819
|
// src/commands/te-analysis/report-abnormal/get.ts
|
|
3128
3820
|
var reportAbnormalGet = createAnalysisCapabilityCommand({
|
|
@@ -3139,10 +3831,10 @@ var reportAbnormalGet = createAnalysisCapabilityCommand({
|
|
|
3139
3831
|
});
|
|
3140
3832
|
|
|
3141
3833
|
// src/commands/te-analysis/report-abnormal/index.ts
|
|
3142
|
-
var
|
|
3834
|
+
var commands18 = [
|
|
3143
3835
|
reportAbnormalGet
|
|
3144
3836
|
];
|
|
3145
|
-
var report_abnormal_default =
|
|
3837
|
+
var report_abnormal_default = commands18;
|
|
3146
3838
|
|
|
3147
3839
|
// src/commands/te-analysis/dashboard/list.ts
|
|
3148
3840
|
var dashboardList = createAnalysisCapabilityCommand({
|
|
@@ -3221,11 +3913,11 @@ var dashboardUpdate = createAnalysisCapabilityCommand({
|
|
|
3221
3913
|
resource: "dashboard",
|
|
3222
3914
|
command: "update",
|
|
3223
3915
|
capabilityId: "analysis.dashboard.update",
|
|
3224
|
-
description: "Update dashboard settings, create/update a dashboard note, save a dashboard-wide default filter, or replace the dashboard-level business filter. Use --operation settings, note-upsert, default-filter, or business-filter.",
|
|
3916
|
+
description: "Update dashboard settings, create/update a dashboard note, save a dashboard-wide or personal default filter, or replace the dashboard-level business filter. Use --operation settings, note-upsert, default-filter, personal-default-filter, or business-filter.",
|
|
3225
3917
|
flags: [
|
|
3226
3918
|
projectIdFlag,
|
|
3227
|
-
{ name: "operation", type: "string", required: true, desc: "Update operation: settings, note-upsert, default-filter, or business-filter." },
|
|
3228
|
-
{ name: "dashboard-id", type: "number", required: false, desc: "Dashboard ID for
|
|
3919
|
+
{ name: "operation", type: "string", required: true, desc: "Update operation: settings, note-upsert, default-filter, personal-default-filter, or business-filter." },
|
|
3920
|
+
{ name: "dashboard-id", type: "number", required: false, desc: "Dashboard ID. Required for note-upsert, default-filter, personal-default-filter, and single-dashboard settings updates." },
|
|
3229
3921
|
{ name: "dashboard-ids", type: "json", required: false, desc: "Dashboard ID array for batch settings updates." },
|
|
3230
3922
|
{ name: "dashboard-name", type: "string", required: false, desc: "Dashboard name for single rename." },
|
|
3231
3923
|
{ name: "zone-offset", type: "number", required: false, desc: "Fixed dashboard time zone offset in hours. For example, UTC+8 is 8 and UTC-5 is -5. Valid range: -12 to 14." },
|
|
@@ -3235,8 +3927,8 @@ var dashboardUpdate = createAnalysisCapabilityCommand({
|
|
|
3235
3927
|
{ name: "note-title", type: "string", required: false, desc: "Dashboard note title. Defaults to empty on create; omitted values are preserved on update." },
|
|
3236
3928
|
{ name: "description", type: "string", required: false, desc: "Dashboard note description. Defaults to empty on create; omitted values are preserved on update." },
|
|
3237
3929
|
{ name: "ui-config", type: "string", required: false, desc: "Dashboard or note UI config string. Omitted note style is preserved on update." },
|
|
3238
|
-
{ name: "filter-name", type: "string", required: false, desc: "Saved filter name. Required with --operation default-filter." },
|
|
3239
|
-
{ name: "filter", type: "json", required: false, desc: 'Saved filter in snake_case QP form. Required with --operation default-filter or business-filter. Pass {"junction_kind":"and","ta_filters":[]} to clear a business filter.' },
|
|
3930
|
+
{ name: "filter-name", type: "string", required: false, desc: "Saved filter name. Required with --operation default-filter or personal-default-filter." },
|
|
3931
|
+
{ name: "filter", type: "json", required: false, desc: 'Saved filter in snake_case QP form: root junction_kind (and/or) and ta_filters array; SIMPLE conditions use filter_type="SIMPLE", column_name, table_type ("0" event, "1" user, "2" cluster/tag), select_type, calcu_symbol (C00 equals), and ftv. Do not use metadata table names or property_name/values. Common validates the QP format; ae-cli forwards it without local QP validation. Required with --operation default-filter, personal-default-filter, or business-filter. Pass {"junction_kind":"and","ta_filters":[]} to clear a business filter.' },
|
|
3240
3932
|
payloadFlag
|
|
3241
3933
|
],
|
|
3242
3934
|
risk: "write",
|
|
@@ -3400,7 +4092,7 @@ var dashboardTaskStatus = createAnalysisCapabilityCommand({
|
|
|
3400
4092
|
});
|
|
3401
4093
|
|
|
3402
4094
|
// src/commands/te-analysis/dashboard/index.ts
|
|
3403
|
-
var
|
|
4095
|
+
var commands19 = [
|
|
3404
4096
|
dashboardList,
|
|
3405
4097
|
dashboardCreate,
|
|
3406
4098
|
dashboardGet,
|
|
@@ -3414,7 +4106,7 @@ var commands18 = [
|
|
|
3414
4106
|
dashboardAbnormalGet,
|
|
3415
4107
|
dashboardTaskStatus
|
|
3416
4108
|
];
|
|
3417
|
-
var dashboard_default =
|
|
4109
|
+
var dashboard_default = commands19;
|
|
3418
4110
|
|
|
3419
4111
|
// src/commands/te-analysis/dashboard-report/add.ts
|
|
3420
4112
|
var dashboardReportAdd = createAnalysisCapabilityCommand({
|
|
@@ -3436,10 +4128,10 @@ var dashboardReportAdd = createAnalysisCapabilityCommand({
|
|
|
3436
4128
|
});
|
|
3437
4129
|
|
|
3438
4130
|
// src/commands/te-analysis/dashboard-report/index.ts
|
|
3439
|
-
var
|
|
4131
|
+
var commands20 = [
|
|
3440
4132
|
dashboardReportAdd
|
|
3441
4133
|
];
|
|
3442
|
-
var dashboard_report_default =
|
|
4134
|
+
var dashboard_report_default = commands20;
|
|
3443
4135
|
|
|
3444
4136
|
// src/commands/te-analysis/dashboard-report-data/run.ts
|
|
3445
4137
|
var dashboardReportDataRun = createAnalysisCapabilityCommand({
|
|
@@ -3495,11 +4187,11 @@ var dashboardReportDataExport = createAnalysisCapabilityCommand({
|
|
|
3495
4187
|
});
|
|
3496
4188
|
|
|
3497
4189
|
// src/commands/te-analysis/dashboard-report-data/index.ts
|
|
3498
|
-
var
|
|
4190
|
+
var commands21 = [
|
|
3499
4191
|
dashboardReportDataRun,
|
|
3500
4192
|
dashboardReportDataExport
|
|
3501
4193
|
];
|
|
3502
|
-
var dashboard_report_data_default =
|
|
4194
|
+
var dashboard_report_data_default = commands21;
|
|
3503
4195
|
|
|
3504
4196
|
// src/commands/te-analysis/query/cancel.ts
|
|
3505
4197
|
var queryCancel = createAnalysisCapabilityCommand({
|
|
@@ -3594,11 +4286,11 @@ var queryCreateResultCluster = createAnalysisCapabilityCommand({
|
|
|
3594
4286
|
});
|
|
3595
4287
|
|
|
3596
4288
|
// src/commands/te-analysis/query/index.ts
|
|
3597
|
-
var
|
|
4289
|
+
var commands22 = [
|
|
3598
4290
|
queryCancel,
|
|
3599
4291
|
queryCreateResultCluster
|
|
3600
4292
|
];
|
|
3601
|
-
var query_default =
|
|
4293
|
+
var query_default = commands22;
|
|
3602
4294
|
|
|
3603
4295
|
// src/commands/te-analysis/query-context/get.ts
|
|
3604
4296
|
var queryContextGet = createAnalysisCapabilityCommand({
|
|
@@ -3630,8 +4322,8 @@ var queryContextGet = createAnalysisCapabilityCommand({
|
|
|
3630
4322
|
});
|
|
3631
4323
|
|
|
3632
4324
|
// src/commands/te-analysis/query-context/index.ts
|
|
3633
|
-
var
|
|
3634
|
-
var query_context_default =
|
|
4325
|
+
var commands23 = [queryContextGet];
|
|
4326
|
+
var query_context_default = commands23;
|
|
3635
4327
|
|
|
3636
4328
|
// src/commands/te-analysis/run/inspect.ts
|
|
3637
4329
|
var runInspect = {
|
|
@@ -3723,11 +4415,11 @@ function artifactIdFrom(descriptor) {
|
|
|
3723
4415
|
}
|
|
3724
4416
|
|
|
3725
4417
|
// src/commands/te-analysis/run/index.ts
|
|
3726
|
-
var
|
|
4418
|
+
var commands24 = [
|
|
3727
4419
|
runInspect,
|
|
3728
4420
|
runWait
|
|
3729
4421
|
];
|
|
3730
|
-
var run_default =
|
|
4422
|
+
var run_default = commands24;
|
|
3731
4423
|
|
|
3732
4424
|
// src/commands/te-analysis/artifact/download.ts
|
|
3733
4425
|
import { resolve as resolve4 } from "path";
|
|
@@ -3774,10 +4466,10 @@ var artifactDownload = {
|
|
|
3774
4466
|
};
|
|
3775
4467
|
|
|
3776
4468
|
// src/commands/te-analysis/artifact/index.ts
|
|
3777
|
-
var
|
|
4469
|
+
var commands25 = [
|
|
3778
4470
|
artifactDownload
|
|
3779
4471
|
];
|
|
3780
|
-
var artifact_default =
|
|
4472
|
+
var artifact_default = commands25;
|
|
3781
4473
|
|
|
3782
4474
|
// src/commands/te-analysis/adhoc/shared.ts
|
|
3783
4475
|
var useCacheFlag2 = {
|
|
@@ -3786,7 +4478,7 @@ var useCacheFlag2 = {
|
|
|
3786
4478
|
required: false,
|
|
3787
4479
|
desc: "Whether to use query cache. Default: true."
|
|
3788
4480
|
};
|
|
3789
|
-
var
|
|
4481
|
+
var zoneOffsetFlag = {
|
|
3790
4482
|
name: "zone-offset",
|
|
3791
4483
|
type: "number",
|
|
3792
4484
|
required: false,
|
|
@@ -3832,10 +4524,11 @@ var adhocBaseFlags = [
|
|
|
3832
4524
|
projectIdFlag,
|
|
3833
4525
|
aiModelTypeFlag(true),
|
|
3834
4526
|
aiDefinitionFlag(true),
|
|
4527
|
+
modelDefinitionIntentSnapshotFlag,
|
|
3835
4528
|
metadataResolutionsFlag,
|
|
3836
4529
|
requestIdFlag,
|
|
3837
4530
|
useCacheFlag2,
|
|
3838
|
-
|
|
4531
|
+
zoneOffsetFlag,
|
|
3839
4532
|
fieldsFlag,
|
|
3840
4533
|
clusterQueryScopeFlag,
|
|
3841
4534
|
slaveClusterIdFlag
|
|
@@ -3862,6 +4555,7 @@ var adhocRun = createAnalysisCapabilityCommand({
|
|
|
3862
4555
|
],
|
|
3863
4556
|
risk: "read",
|
|
3864
4557
|
validate: validateClusterQueryRouting,
|
|
4558
|
+
intentConsistency: { definitionFlag: "definition", modelTypeFlag: "model-type" },
|
|
3865
4559
|
buildInput: adhocRunInput
|
|
3866
4560
|
});
|
|
3867
4561
|
|
|
@@ -3877,15 +4571,16 @@ var adhocExport = createAnalysisCapabilityCommand({
|
|
|
3877
4571
|
],
|
|
3878
4572
|
risk: "read",
|
|
3879
4573
|
validate: validateClusterQueryRouting,
|
|
4574
|
+
intentConsistency: { definitionFlag: "definition", modelTypeFlag: "model-type" },
|
|
3880
4575
|
buildInput: adhocExportInput
|
|
3881
4576
|
});
|
|
3882
4577
|
|
|
3883
4578
|
// src/commands/te-analysis/adhoc/index.ts
|
|
3884
|
-
var
|
|
4579
|
+
var commands26 = [
|
|
3885
4580
|
adhocRun,
|
|
3886
4581
|
adhocExport
|
|
3887
4582
|
];
|
|
3888
|
-
var adhoc_default =
|
|
4583
|
+
var adhoc_default = commands26;
|
|
3889
4584
|
|
|
3890
4585
|
// src/commands/te-analysis/dashboard-definition/export.ts
|
|
3891
4586
|
var dashboardDefinitionExport = createAnalysisCapabilityCommand({
|
|
@@ -3940,11 +4635,11 @@ var dashboardDefinitionImport = createAnalysisCapabilityCommand({
|
|
|
3940
4635
|
});
|
|
3941
4636
|
|
|
3942
4637
|
// src/commands/te-analysis/dashboard-definition/index.ts
|
|
3943
|
-
var
|
|
4638
|
+
var commands27 = [
|
|
3944
4639
|
dashboardDefinitionExport,
|
|
3945
4640
|
dashboardDefinitionImport
|
|
3946
4641
|
];
|
|
3947
|
-
var dashboard_definition_default =
|
|
4642
|
+
var dashboard_definition_default = commands27;
|
|
3948
4643
|
|
|
3949
4644
|
// src/commands/te-analysis/dashboard-daily-report/get.ts
|
|
3950
4645
|
var dashboardDailyReportGet = createAnalysisCapabilityCommand({
|
|
@@ -4128,13 +4823,13 @@ var dashboardDailyReportSendStatus = createAnalysisCapabilityCommand({
|
|
|
4128
4823
|
});
|
|
4129
4824
|
|
|
4130
4825
|
// src/commands/te-analysis/dashboard-daily-report/index.ts
|
|
4131
|
-
var
|
|
4826
|
+
var commands28 = [
|
|
4132
4827
|
dashboardDailyReportGet,
|
|
4133
4828
|
dashboardDailyReportUpdate,
|
|
4134
4829
|
dashboardDailyReportSend,
|
|
4135
4830
|
dashboardDailyReportSendStatus
|
|
4136
4831
|
];
|
|
4137
|
-
var dashboard_daily_report_default =
|
|
4832
|
+
var dashboard_daily_report_default = commands28;
|
|
4138
4833
|
|
|
4139
4834
|
// src/commands/te-analysis/bi-panel/list.ts
|
|
4140
4835
|
var biPanelList = createAnalysisCapabilityCommand({
|
|
@@ -4244,8 +4939,8 @@ var biPanelCopy = createAnalysisCapabilityCommand({
|
|
|
4244
4939
|
description: "Copy a BI panel.",
|
|
4245
4940
|
flags: [
|
|
4246
4941
|
projectIdFlag,
|
|
4247
|
-
{ name: "panel-name", type: "string", required:
|
|
4248
|
-
{ name: "panel-uuid", type: "string", required:
|
|
4942
|
+
{ name: "panel-name", type: "string", required: true, desc: "New BI panel name." },
|
|
4943
|
+
{ name: "panel-uuid", type: "string", required: true, desc: "Source BI panel UUID." },
|
|
4249
4944
|
{ name: "space-id", type: "number", required: false, desc: "Target project space ID." },
|
|
4250
4945
|
{ name: "folder-id", type: "number", required: false, desc: "Target folder ID." },
|
|
4251
4946
|
payloadFlag
|
|
@@ -4262,7 +4957,7 @@ var biPanelCopy = createAnalysisCapabilityCommand({
|
|
|
4262
4957
|
});
|
|
4263
4958
|
|
|
4264
4959
|
// src/commands/te-analysis/bi-panel/index.ts
|
|
4265
|
-
var
|
|
4960
|
+
var commands29 = [
|
|
4266
4961
|
biPanelList,
|
|
4267
4962
|
biPanelGet,
|
|
4268
4963
|
biPanelCreate,
|
|
@@ -4271,7 +4966,7 @@ var commands28 = [
|
|
|
4271
4966
|
biPanelShare,
|
|
4272
4967
|
biPanelCopy
|
|
4273
4968
|
];
|
|
4274
|
-
var bi_panel_default =
|
|
4969
|
+
var bi_panel_default = commands29;
|
|
4275
4970
|
|
|
4276
4971
|
// src/commands/te-analysis/bi-panel-version/get.ts
|
|
4277
4972
|
var biPanelVersionGet = createAnalysisCapabilityCommand({
|
|
@@ -4318,11 +5013,11 @@ var biPanelVersionPublish = createAnalysisCapabilityCommand({
|
|
|
4318
5013
|
});
|
|
4319
5014
|
|
|
4320
5015
|
// src/commands/te-analysis/bi-panel-version/index.ts
|
|
4321
|
-
var
|
|
5016
|
+
var commands30 = [
|
|
4322
5017
|
biPanelVersionGet,
|
|
4323
5018
|
biPanelVersionPublish
|
|
4324
5019
|
];
|
|
4325
|
-
var bi_panel_version_default =
|
|
5020
|
+
var bi_panel_version_default = commands30;
|
|
4326
5021
|
|
|
4327
5022
|
// src/commands/te-analysis/bi-panel-page-data/run.ts
|
|
4328
5023
|
var biPanelPageDataRun = createAnalysisCapabilityCommand({
|
|
@@ -4376,11 +5071,11 @@ var biPanelPageDataExport = createAnalysisCapabilityCommand({
|
|
|
4376
5071
|
});
|
|
4377
5072
|
|
|
4378
5073
|
// src/commands/te-analysis/bi-panel-page-data/index.ts
|
|
4379
|
-
var
|
|
5074
|
+
var commands31 = [
|
|
4380
5075
|
biPanelPageDataRun,
|
|
4381
5076
|
biPanelPageDataExport
|
|
4382
5077
|
];
|
|
4383
|
-
var bi_panel_page_data_default =
|
|
5078
|
+
var bi_panel_page_data_default = commands31;
|
|
4384
5079
|
|
|
4385
5080
|
// src/commands/te-analysis/project-space/list.ts
|
|
4386
5081
|
var projectSpaceList = createAnalysisCapabilityCommand({
|
|
@@ -4429,12 +5124,12 @@ var projectSpaceBusinessFilterUpsert = createAnalysisCapabilityCommand({
|
|
|
4429
5124
|
});
|
|
4430
5125
|
|
|
4431
5126
|
// src/commands/te-analysis/project-space/index.ts
|
|
4432
|
-
var
|
|
5127
|
+
var commands32 = [
|
|
4433
5128
|
projectSpaceList,
|
|
4434
5129
|
projectSpaceGet,
|
|
4435
5130
|
projectSpaceBusinessFilterUpsert
|
|
4436
5131
|
];
|
|
4437
|
-
var project_space_default =
|
|
5132
|
+
var project_space_default = commands32;
|
|
4438
5133
|
|
|
4439
5134
|
// src/commands/te-analysis/favorite/add.ts
|
|
4440
5135
|
var favoriteAdd = createAnalysisCapabilityCommand({
|
|
@@ -4479,11 +5174,11 @@ var favoriteRemove = createAnalysisCapabilityCommand({
|
|
|
4479
5174
|
});
|
|
4480
5175
|
|
|
4481
5176
|
// src/commands/te-analysis/favorite/index.ts
|
|
4482
|
-
var
|
|
5177
|
+
var commands33 = [
|
|
4483
5178
|
favoriteAdd,
|
|
4484
5179
|
favoriteRemove
|
|
4485
5180
|
];
|
|
4486
|
-
var favorite_default =
|
|
5181
|
+
var favorite_default = commands33;
|
|
4487
5182
|
|
|
4488
5183
|
// src/commands/te-analysis/public-link/create.ts
|
|
4489
5184
|
var publicLinkCreate = createAnalysisCapabilityCommand({
|
|
@@ -4600,14 +5295,14 @@ var publicLinkDelete = createAnalysisCapabilityCommand({
|
|
|
4600
5295
|
});
|
|
4601
5296
|
|
|
4602
5297
|
// src/commands/te-analysis/public-link/index.ts
|
|
4603
|
-
var
|
|
5298
|
+
var commands34 = [
|
|
4604
5299
|
publicLinkCreate,
|
|
4605
5300
|
publicLinkList,
|
|
4606
5301
|
publicLinkUpdate,
|
|
4607
5302
|
publicLinkOffline,
|
|
4608
5303
|
publicLinkDelete
|
|
4609
5304
|
];
|
|
4610
|
-
var public_link_default =
|
|
5305
|
+
var public_link_default = commands34;
|
|
4611
5306
|
|
|
4612
5307
|
// src/commands/te-analysis/filter-value/list.ts
|
|
4613
5308
|
var filterValueList = createAnalysisCapabilityCommand({
|
|
@@ -4641,8 +5336,8 @@ var filterValueList = createAnalysisCapabilityCommand({
|
|
|
4641
5336
|
});
|
|
4642
5337
|
|
|
4643
5338
|
// src/commands/te-analysis/filter-value/index.ts
|
|
4644
|
-
var
|
|
4645
|
-
var filter_value_default =
|
|
5339
|
+
var commands35 = [filterValueList];
|
|
5340
|
+
var filter_value_default = commands35;
|
|
4646
5341
|
|
|
4647
5342
|
// src/commands/te-analysis/event-detail/shared.ts
|
|
4648
5343
|
var eventDetailDefinitionFlag = {
|
|
@@ -4686,9 +5381,10 @@ function eventDetailExportInput(ctx) {
|
|
|
4686
5381
|
var eventDetailBaseFlags = [
|
|
4687
5382
|
projectIdFlag,
|
|
4688
5383
|
eventDetailDefinitionFlag,
|
|
5384
|
+
definitionIntentSnapshotFlag,
|
|
4689
5385
|
requestIdFlag,
|
|
4690
5386
|
useCacheFlag2,
|
|
4691
|
-
|
|
5387
|
+
zoneOffsetFlag
|
|
4692
5388
|
];
|
|
4693
5389
|
var eventDetailExportFlags = [
|
|
4694
5390
|
...eventDetailBaseFlags,
|
|
@@ -4708,6 +5404,7 @@ var eventDetailRun = createAnalysisCapabilityCommand({
|
|
|
4708
5404
|
syncTimeoutSecondsFlag
|
|
4709
5405
|
],
|
|
4710
5406
|
risk: "read",
|
|
5407
|
+
intentConsistency: { definitionFlag: "definition" },
|
|
4711
5408
|
buildInput: eventDetailRunInput
|
|
4712
5409
|
});
|
|
4713
5410
|
|
|
@@ -4722,15 +5419,16 @@ var eventDetailExport = createAnalysisCapabilityCommand({
|
|
|
4722
5419
|
...eventDetailExportFlags
|
|
4723
5420
|
],
|
|
4724
5421
|
risk: "read",
|
|
5422
|
+
intentConsistency: { definitionFlag: "definition" },
|
|
4725
5423
|
buildInput: eventDetailExportInput
|
|
4726
5424
|
});
|
|
4727
5425
|
|
|
4728
5426
|
// src/commands/te-analysis/event-detail/index.ts
|
|
4729
|
-
var
|
|
5427
|
+
var commands36 = [
|
|
4730
5428
|
eventDetailRun,
|
|
4731
5429
|
eventDetailExport
|
|
4732
5430
|
];
|
|
4733
|
-
var event_detail_default =
|
|
5431
|
+
var event_detail_default = commands36;
|
|
4734
5432
|
|
|
4735
5433
|
// src/commands/te-analysis/entity-detail/shared.ts
|
|
4736
5434
|
var entityDetailDefinitionFlag = {
|
|
@@ -4774,9 +5472,10 @@ function entityDetailExportInput(ctx) {
|
|
|
4774
5472
|
var entityDetailBaseFlags = [
|
|
4775
5473
|
projectIdFlag,
|
|
4776
5474
|
entityDetailDefinitionFlag,
|
|
5475
|
+
definitionIntentSnapshotFlag,
|
|
4777
5476
|
requestIdFlag,
|
|
4778
5477
|
useCacheFlag2,
|
|
4779
|
-
|
|
5478
|
+
zoneOffsetFlag
|
|
4780
5479
|
];
|
|
4781
5480
|
var entityDetailExportFlags = [
|
|
4782
5481
|
...entityDetailBaseFlags,
|
|
@@ -4796,6 +5495,7 @@ var entityDetailRun = createAnalysisCapabilityCommand({
|
|
|
4796
5495
|
syncTimeoutSecondsFlag
|
|
4797
5496
|
],
|
|
4798
5497
|
risk: "read",
|
|
5498
|
+
intentConsistency: { definitionFlag: "definition" },
|
|
4799
5499
|
buildInput: entityDetailRunInput
|
|
4800
5500
|
});
|
|
4801
5501
|
|
|
@@ -4810,15 +5510,16 @@ var entityDetailExport = createAnalysisCapabilityCommand({
|
|
|
4810
5510
|
...entityDetailExportFlags
|
|
4811
5511
|
],
|
|
4812
5512
|
risk: "read",
|
|
5513
|
+
intentConsistency: { definitionFlag: "definition" },
|
|
4813
5514
|
buildInput: entityDetailExportInput
|
|
4814
5515
|
});
|
|
4815
5516
|
|
|
4816
5517
|
// src/commands/te-analysis/entity-detail/index.ts
|
|
4817
|
-
var
|
|
5518
|
+
var commands37 = [
|
|
4818
5519
|
entityDetailRun,
|
|
4819
5520
|
entityDetailExport
|
|
4820
5521
|
];
|
|
4821
|
-
var entity_detail_default =
|
|
5522
|
+
var entity_detail_default = commands37;
|
|
4822
5523
|
|
|
4823
5524
|
// src/commands/te-analysis/drilldown-events/shared.ts
|
|
4824
5525
|
var queryContextIdFlag = {
|
|
@@ -4906,8 +5607,8 @@ var drilldownEventsRun = createAnalysisCapabilityCommand({
|
|
|
4906
5607
|
});
|
|
4907
5608
|
|
|
4908
5609
|
// src/commands/te-analysis/drilldown-events/index.ts
|
|
4909
|
-
var
|
|
4910
|
-
var drilldown_events_default =
|
|
5610
|
+
var commands38 = [drilldownEventsRun, drilldownEventsExport];
|
|
5611
|
+
var drilldown_events_default = commands38;
|
|
4911
5612
|
|
|
4912
5613
|
// src/commands/te-analysis/drilldown-entities/shared.ts
|
|
4913
5614
|
var queryContextIdFlag2 = {
|
|
@@ -4991,8 +5692,8 @@ var drilldownEntitiesRun = createAnalysisCapabilityCommand({
|
|
|
4991
5692
|
});
|
|
4992
5693
|
|
|
4993
5694
|
// src/commands/te-analysis/drilldown-entities/index.ts
|
|
4994
|
-
var
|
|
4995
|
-
var drilldown_entities_default =
|
|
5695
|
+
var commands39 = [drilldownEntitiesRun, drilldownEntitiesExport];
|
|
5696
|
+
var drilldown_entities_default = commands39;
|
|
4996
5697
|
|
|
4997
5698
|
// src/commands/te-analysis/drilldown-user-events/shared.ts
|
|
4998
5699
|
var drilldownContextIdFlag = {
|
|
@@ -5093,8 +5794,8 @@ var drilldownUserEventsRun = createAnalysisCapabilityCommand({
|
|
|
5093
5794
|
});
|
|
5094
5795
|
|
|
5095
5796
|
// src/commands/te-analysis/drilldown-user-events/index.ts
|
|
5096
|
-
var
|
|
5097
|
-
var drilldown_user_events_default =
|
|
5797
|
+
var commands40 = [drilldownUserEventsRun, drilldownUserEventsExport];
|
|
5798
|
+
var drilldown_user_events_default = commands40;
|
|
5098
5799
|
|
|
5099
5800
|
// src/commands/te-analysis/user/index.ts
|
|
5100
5801
|
import { existsSync, statSync as statSync2 } from "fs";
|
|
@@ -5185,7 +5886,7 @@ var optionalTagDefinitionRequestFlag = {
|
|
|
5185
5886
|
required: false,
|
|
5186
5887
|
desc: "Optional semantic snake_case tag definition. Read user_tag_models.md; raw filts, C-codes, ftv, columnName, and backend DTOs are rejected."
|
|
5187
5888
|
};
|
|
5188
|
-
var
|
|
5889
|
+
var zoneOffsetFlag2 = {
|
|
5189
5890
|
name: "zone-offset",
|
|
5190
5891
|
type: "number",
|
|
5191
5892
|
required: false,
|
|
@@ -5607,7 +6308,7 @@ var memberExportFlags = [
|
|
|
5607
6308
|
memberArtifactFormatFlag,
|
|
5608
6309
|
asyncTimeoutSecondsFlag
|
|
5609
6310
|
];
|
|
5610
|
-
var
|
|
6311
|
+
var commands41 = [
|
|
5611
6312
|
capability(
|
|
5612
6313
|
"user-cluster",
|
|
5613
6314
|
"list",
|
|
@@ -5654,7 +6355,7 @@ var commands40 = [
|
|
|
5654
6355
|
displayNameFlag,
|
|
5655
6356
|
clusterDefinitionRequestFlag,
|
|
5656
6357
|
authenticatedOnlyFlag,
|
|
5657
|
-
|
|
6358
|
+
zoneOffsetFlag2,
|
|
5658
6359
|
entityIdFlag
|
|
5659
6360
|
], "write", (ctx) => clusterWriteInput(ctx, true)),
|
|
5660
6361
|
capability("user-cluster", "update", "analysis.user_cluster.update", "Update a condition or SQL user cluster without changing its existing type or analysis entity. Pass only fields that should change.", [
|
|
@@ -5664,7 +6365,7 @@ var commands40 = [
|
|
|
5664
6365
|
optionalClusterDefinitionRequestFlag,
|
|
5665
6366
|
authenticatedOnlyFlag,
|
|
5666
6367
|
remarkFlag,
|
|
5667
|
-
|
|
6368
|
+
zoneOffsetFlag2,
|
|
5668
6369
|
autoRefreshCronFlag
|
|
5669
6370
|
], "high-risk-write", (ctx) => clusterWriteInput(ctx, false)),
|
|
5670
6371
|
idImportCapability(capability("user-cluster", "create-id", "analysis.user_cluster.create_id", "Create a cluster by mapping imported values to an analysis entity.", [
|
|
@@ -5747,7 +6448,7 @@ var commands40 = [
|
|
|
5747
6448
|
displayNameFlag,
|
|
5748
6449
|
tagDefinitionRequestFlag,
|
|
5749
6450
|
authenticatedOnlyFlag,
|
|
5750
|
-
|
|
6451
|
+
zoneOffsetFlag2,
|
|
5751
6452
|
entityIdFlag,
|
|
5752
6453
|
...tagAutoRefreshFlags
|
|
5753
6454
|
], "write", (ctx) => tagWriteInput(ctx, true)),
|
|
@@ -5758,7 +6459,7 @@ var commands40 = [
|
|
|
5758
6459
|
optionalTagDefinitionRequestFlag,
|
|
5759
6460
|
authenticatedOnlyFlag,
|
|
5760
6461
|
remarkFlag,
|
|
5761
|
-
|
|
6462
|
+
zoneOffsetFlag2,
|
|
5762
6463
|
...tagAutoRefreshFlags
|
|
5763
6464
|
], "write", (ctx) => tagWriteInput(ctx, false)),
|
|
5764
6465
|
capability("user-tag", "refresh", "analysis.user_tag.refresh", "Refresh a user tag by exact tag_name.", [
|
|
@@ -5862,7 +6563,7 @@ var commands40 = [
|
|
|
5862
6563
|
...memberExportFlags
|
|
5863
6564
|
], "read", (ctx) => historyTagDataDrilldownInput(ctx, false), { asyncArtifact: true })
|
|
5864
6565
|
];
|
|
5865
|
-
var user_default =
|
|
6566
|
+
var user_default = commands41;
|
|
5866
6567
|
|
|
5867
6568
|
// src/commands/te-analysis/query-cluster/list.ts
|
|
5868
6569
|
var queryClusterList = createAnalysisCapabilityCommand({
|
|
@@ -5876,8 +6577,8 @@ var queryClusterList = createAnalysisCapabilityCommand({
|
|
|
5876
6577
|
});
|
|
5877
6578
|
|
|
5878
6579
|
// src/commands/te-analysis/query-cluster/index.ts
|
|
5879
|
-
var
|
|
5880
|
-
var query_cluster_default =
|
|
6580
|
+
var commands42 = [queryClusterList];
|
|
6581
|
+
var query_cluster_default = commands42;
|
|
5881
6582
|
|
|
5882
6583
|
// src/commands/te-analysis/sql-table/columns.ts
|
|
5883
6584
|
var sqlTableColumns = createAnalysisCapabilityCommand({
|
|
@@ -5922,8 +6623,8 @@ var sqlTableList = createAnalysisCapabilityCommand({
|
|
|
5922
6623
|
});
|
|
5923
6624
|
|
|
5924
6625
|
// src/commands/te-analysis/sql-table/index.ts
|
|
5925
|
-
var
|
|
5926
|
-
var sql_table_default =
|
|
6626
|
+
var commands43 = [sqlTableList, sqlTableColumns];
|
|
6627
|
+
var sql_table_default = commands43;
|
|
5927
6628
|
|
|
5928
6629
|
// src/commands/te-analysis/entity/id-import-options.ts
|
|
5929
6630
|
var entityIdImportOptions = createAnalysisCapabilityCommand({
|
|
@@ -5948,8 +6649,8 @@ var entityIdImportOptions = createAnalysisCapabilityCommand({
|
|
|
5948
6649
|
});
|
|
5949
6650
|
|
|
5950
6651
|
// src/commands/te-analysis/entity/index.ts
|
|
5951
|
-
var
|
|
5952
|
-
var entity_default =
|
|
6652
|
+
var commands44 = [entityIdImportOptions];
|
|
6653
|
+
var entity_default = commands44;
|
|
5953
6654
|
|
|
5954
6655
|
// src/commands/te-analysis/input-file/inspect.ts
|
|
5955
6656
|
var inputFileInspect = {
|
|
@@ -6032,8 +6733,8 @@ var inputFileUpload = {
|
|
|
6032
6733
|
};
|
|
6033
6734
|
|
|
6034
6735
|
// src/commands/te-analysis/input-file/index.ts
|
|
6035
|
-
var
|
|
6036
|
-
var input_file_default =
|
|
6736
|
+
var commands45 = [inputFileUpload, inputFileInspect, inputFilePurposeList];
|
|
6737
|
+
var input_file_default = commands45;
|
|
6037
6738
|
|
|
6038
6739
|
// src/commands/te-analysis/project/access-detail/get.ts
|
|
6039
6740
|
var projectAccessDetailGet = createAnalysisCapabilityCommand({
|
|
@@ -6051,10 +6752,10 @@ var projectAccessDetailGet = createAnalysisCapabilityCommand({
|
|
|
6051
6752
|
});
|
|
6052
6753
|
|
|
6053
6754
|
// src/commands/te-analysis/project/access-detail/index.ts
|
|
6054
|
-
var
|
|
6755
|
+
var commands46 = [
|
|
6055
6756
|
projectAccessDetailGet
|
|
6056
6757
|
];
|
|
6057
|
-
var access_detail_default =
|
|
6758
|
+
var access_detail_default = commands46;
|
|
6058
6759
|
|
|
6059
6760
|
// src/commands/te-analysis/project/data-power/delete.ts
|
|
6060
6761
|
var projectDataPowerDelete = createAnalysisCapabilityCommand({
|
|
@@ -6126,13 +6827,13 @@ var projectDataPowerUpsert = createAnalysisCapabilityCommand({
|
|
|
6126
6827
|
});
|
|
6127
6828
|
|
|
6128
6829
|
// src/commands/te-analysis/project/data-power/index.ts
|
|
6129
|
-
var
|
|
6830
|
+
var commands47 = [
|
|
6130
6831
|
projectDataPowerDelete,
|
|
6131
6832
|
projectDataPowerGet,
|
|
6132
6833
|
projectDataPowerList,
|
|
6133
6834
|
projectDataPowerUpsert
|
|
6134
6835
|
];
|
|
6135
|
-
var data_power_default =
|
|
6836
|
+
var data_power_default = commands47;
|
|
6136
6837
|
|
|
6137
6838
|
// src/commands/te-analysis/project/entity/create.ts
|
|
6138
6839
|
var projectEntityCreate = createAnalysisCapabilityCommand({
|
|
@@ -6243,14 +6944,14 @@ var projectEntityUpdate = createAnalysisCapabilityCommand({
|
|
|
6243
6944
|
});
|
|
6244
6945
|
|
|
6245
6946
|
// src/commands/te-analysis/project/entity/index.ts
|
|
6246
|
-
var
|
|
6947
|
+
var commands48 = [
|
|
6247
6948
|
projectEntityCreate,
|
|
6248
6949
|
projectEntityDelete,
|
|
6249
6950
|
projectEntityGet,
|
|
6250
6951
|
projectEntityList,
|
|
6251
6952
|
projectEntityUpdate
|
|
6252
6953
|
];
|
|
6253
|
-
var entity_default2 =
|
|
6954
|
+
var entity_default2 = commands48;
|
|
6254
6955
|
|
|
6255
6956
|
// src/commands/te-analysis/project/entity-event/list.ts
|
|
6256
6957
|
var projectEntityEventList = createAnalysisCapabilityCommand({
|
|
@@ -6270,10 +6971,10 @@ var projectEntityEventList = createAnalysisCapabilityCommand({
|
|
|
6270
6971
|
});
|
|
6271
6972
|
|
|
6272
6973
|
// src/commands/te-analysis/project/entity-event/index.ts
|
|
6273
|
-
var
|
|
6974
|
+
var commands49 = [
|
|
6274
6975
|
projectEntityEventList
|
|
6275
6976
|
];
|
|
6276
|
-
var entity_event_default =
|
|
6977
|
+
var entity_event_default = commands49;
|
|
6277
6978
|
|
|
6278
6979
|
// src/commands/te-analysis/project/function/list.ts
|
|
6279
6980
|
var projectFunctionList = createAnalysisCapabilityCommand({
|
|
@@ -6293,10 +6994,10 @@ var projectFunctionList = createAnalysisCapabilityCommand({
|
|
|
6293
6994
|
});
|
|
6294
6995
|
|
|
6295
6996
|
// src/commands/te-analysis/project/function/index.ts
|
|
6296
|
-
var
|
|
6997
|
+
var commands50 = [
|
|
6297
6998
|
projectFunctionList
|
|
6298
6999
|
];
|
|
6299
|
-
var function_default =
|
|
7000
|
+
var function_default = commands50;
|
|
6300
7001
|
|
|
6301
7002
|
// src/commands/te-analysis/project/info/create.ts
|
|
6302
7003
|
var projectInfoCreate = createAnalysisCapabilityCommand({
|
|
@@ -6391,14 +7092,14 @@ var projectInfoUpdate = createAnalysisCapabilityCommand({
|
|
|
6391
7092
|
});
|
|
6392
7093
|
|
|
6393
7094
|
// src/commands/te-analysis/project/info/index.ts
|
|
6394
|
-
var
|
|
7095
|
+
var commands51 = [
|
|
6395
7096
|
projectInfoCreate,
|
|
6396
7097
|
projectInfoDelete,
|
|
6397
7098
|
projectInfoGet,
|
|
6398
7099
|
projectInfoList,
|
|
6399
7100
|
projectInfoUpdate
|
|
6400
7101
|
];
|
|
6401
|
-
var info_default =
|
|
7102
|
+
var info_default = commands51;
|
|
6402
7103
|
|
|
6403
7104
|
// src/commands/te-analysis/project/mark-time/create.ts
|
|
6404
7105
|
var projectMarkTimeCreate = createAnalysisCapabilityCommand({
|
|
@@ -6492,13 +7193,13 @@ var projectMarkTimeUpdate = createAnalysisCapabilityCommand({
|
|
|
6492
7193
|
});
|
|
6493
7194
|
|
|
6494
7195
|
// src/commands/te-analysis/project/mark-time/index.ts
|
|
6495
|
-
var
|
|
7196
|
+
var commands52 = [
|
|
6496
7197
|
projectMarkTimeCreate,
|
|
6497
7198
|
projectMarkTimeDelete,
|
|
6498
7199
|
projectMarkTimeList,
|
|
6499
7200
|
projectMarkTimeUpdate
|
|
6500
7201
|
];
|
|
6501
|
-
var mark_time_default =
|
|
7202
|
+
var mark_time_default = commands52;
|
|
6502
7203
|
|
|
6503
7204
|
// src/commands/te-analysis/project/member/add.ts
|
|
6504
7205
|
var projectMemberAdd = createAnalysisCapabilityCommand({
|
|
@@ -6509,7 +7210,12 @@ var projectMemberAdd = createAnalysisCapabilityCommand({
|
|
|
6509
7210
|
flags: [
|
|
6510
7211
|
projectIdFlag,
|
|
6511
7212
|
requiredPayloadFlag,
|
|
6512
|
-
{
|
|
7213
|
+
{
|
|
7214
|
+
name: "type",
|
|
7215
|
+
type: "string",
|
|
7216
|
+
required: true,
|
|
7217
|
+
desc: "Member add type: 0 creates a company member from project management; 1 adds an existing company member. Type 0 may be disabled by company configuration."
|
|
7218
|
+
}
|
|
6513
7219
|
],
|
|
6514
7220
|
risk: "write",
|
|
6515
7221
|
buildInput: (ctx) => compactInput({
|
|
@@ -6609,7 +7315,7 @@ var projectMemberUpdate = createAnalysisCapabilityCommand({
|
|
|
6609
7315
|
});
|
|
6610
7316
|
|
|
6611
7317
|
// src/commands/te-analysis/project/member/index.ts
|
|
6612
|
-
var
|
|
7318
|
+
var commands53 = [
|
|
6613
7319
|
projectMemberAdd,
|
|
6614
7320
|
projectMemberBatchUpdate,
|
|
6615
7321
|
projectMemberImport,
|
|
@@ -6617,7 +7323,7 @@ var commands52 = [
|
|
|
6617
7323
|
projectMemberRemove,
|
|
6618
7324
|
projectMemberUpdate
|
|
6619
7325
|
];
|
|
6620
|
-
var member_default =
|
|
7326
|
+
var member_default = commands53;
|
|
6621
7327
|
|
|
6622
7328
|
// src/commands/te-analysis/project/member-candidate/list.ts
|
|
6623
7329
|
var projectMemberCandidateList = createAnalysisCapabilityCommand({
|
|
@@ -6627,8 +7333,18 @@ var projectMemberCandidateList = createAnalysisCapabilityCommand({
|
|
|
6627
7333
|
description: "List candidate users and role/data-power options for adding project members.",
|
|
6628
7334
|
flags: [
|
|
6629
7335
|
projectIdFlag,
|
|
6630
|
-
{
|
|
6631
|
-
|
|
7336
|
+
{
|
|
7337
|
+
name: "type",
|
|
7338
|
+
type: "string",
|
|
7339
|
+
required: true,
|
|
7340
|
+
desc: "Member add type: 0 checks new company members from project management; 1 lists existing company members. Type 0 may be disabled by company configuration."
|
|
7341
|
+
},
|
|
7342
|
+
{
|
|
7343
|
+
name: "login-names",
|
|
7344
|
+
type: "string",
|
|
7345
|
+
required: false,
|
|
7346
|
+
desc: "Comma-separated login names when checking new users."
|
|
7347
|
+
}
|
|
6632
7348
|
],
|
|
6633
7349
|
risk: "read",
|
|
6634
7350
|
buildInput: (ctx) => compactInput({
|
|
@@ -6639,10 +7355,10 @@ var projectMemberCandidateList = createAnalysisCapabilityCommand({
|
|
|
6639
7355
|
});
|
|
6640
7356
|
|
|
6641
7357
|
// src/commands/te-analysis/project/member-candidate/index.ts
|
|
6642
|
-
var
|
|
7358
|
+
var commands54 = [
|
|
6643
7359
|
projectMemberCandidateList
|
|
6644
7360
|
];
|
|
6645
|
-
var member_candidate_default =
|
|
7361
|
+
var member_candidate_default = commands54;
|
|
6646
7362
|
|
|
6647
7363
|
// src/commands/te-analysis/project/member-handover/export.ts
|
|
6648
7364
|
var projectMemberHandoverExport = createAnalysisCapabilityCommand({
|
|
@@ -6683,11 +7399,11 @@ var projectMemberHandoverRun = createAnalysisCapabilityCommand({
|
|
|
6683
7399
|
});
|
|
6684
7400
|
|
|
6685
7401
|
// src/commands/te-analysis/project/member-handover/index.ts
|
|
6686
|
-
var
|
|
7402
|
+
var commands55 = [
|
|
6687
7403
|
projectMemberHandoverExport,
|
|
6688
7404
|
projectMemberHandoverRun
|
|
6689
7405
|
];
|
|
6690
|
-
var member_handover_default =
|
|
7406
|
+
var member_handover_default = commands55;
|
|
6691
7407
|
|
|
6692
7408
|
// src/commands/te-analysis/project/member-receiver/list.ts
|
|
6693
7409
|
var projectMemberReceiverList = createAnalysisCapabilityCommand({
|
|
@@ -6705,10 +7421,10 @@ var projectMemberReceiverList = createAnalysisCapabilityCommand({
|
|
|
6705
7421
|
});
|
|
6706
7422
|
|
|
6707
7423
|
// src/commands/te-analysis/project/member-receiver/index.ts
|
|
6708
|
-
var
|
|
7424
|
+
var commands56 = [
|
|
6709
7425
|
projectMemberReceiverList
|
|
6710
7426
|
];
|
|
6711
|
-
var member_receiver_default =
|
|
7427
|
+
var member_receiver_default = commands56;
|
|
6712
7428
|
|
|
6713
7429
|
// src/commands/te-analysis/project/owner/update.ts
|
|
6714
7430
|
var projectOwnerUpdate = createAnalysisCapabilityCommand({
|
|
@@ -6734,10 +7450,10 @@ var projectOwnerUpdate = createAnalysisCapabilityCommand({
|
|
|
6734
7450
|
});
|
|
6735
7451
|
|
|
6736
7452
|
// src/commands/te-analysis/project/owner/index.ts
|
|
6737
|
-
var
|
|
7453
|
+
var commands57 = [
|
|
6738
7454
|
projectOwnerUpdate
|
|
6739
7455
|
];
|
|
6740
|
-
var owner_default =
|
|
7456
|
+
var owner_default = commands57;
|
|
6741
7457
|
|
|
6742
7458
|
// src/commands/te-analysis/project/permission-binding/list.ts
|
|
6743
7459
|
var projectPermissionBindingList = createAnalysisCapabilityCommand({
|
|
@@ -6759,10 +7475,10 @@ var projectPermissionBindingList = createAnalysisCapabilityCommand({
|
|
|
6759
7475
|
});
|
|
6760
7476
|
|
|
6761
7477
|
// src/commands/te-analysis/project/permission-binding/index.ts
|
|
6762
|
-
var
|
|
7478
|
+
var commands58 = [
|
|
6763
7479
|
projectPermissionBindingList
|
|
6764
7480
|
];
|
|
6765
|
-
var permission_binding_default =
|
|
7481
|
+
var permission_binding_default = commands58;
|
|
6766
7482
|
|
|
6767
7483
|
// src/commands/te-analysis/project/receive-status/update.ts
|
|
6768
7484
|
var projectReceiveStatusUpdate = createAnalysisCapabilityCommand({
|
|
@@ -6783,10 +7499,10 @@ var projectReceiveStatusUpdate = createAnalysisCapabilityCommand({
|
|
|
6783
7499
|
});
|
|
6784
7500
|
|
|
6785
7501
|
// src/commands/te-analysis/project/receive-status/index.ts
|
|
6786
|
-
var
|
|
7502
|
+
var commands59 = [
|
|
6787
7503
|
projectReceiveStatusUpdate
|
|
6788
7504
|
];
|
|
6789
|
-
var receive_status_default =
|
|
7505
|
+
var receive_status_default = commands59;
|
|
6790
7506
|
|
|
6791
7507
|
// src/commands/te-analysis/project/role/delete.ts
|
|
6792
7508
|
var projectRoleDelete = createAnalysisCapabilityCommand({
|
|
@@ -6845,14 +7561,30 @@ var projectRoleList = createAnalysisCapabilityCommand({
|
|
|
6845
7561
|
});
|
|
6846
7562
|
|
|
6847
7563
|
// src/commands/te-analysis/project/role/upsert.ts
|
|
7564
|
+
var ROLE_UPSERT_HELP = [
|
|
7565
|
+
"Payload contract:",
|
|
7566
|
+
"- role_func_list is a non-empty array of objects. Each object requires a non-empty function_name and has_power set to integer 0 or 1.",
|
|
7567
|
+
"- Resolve valid function_name values with ae-cli project function list before saving the role.",
|
|
7568
|
+
"- role_desc is required when creating a role and must contain 1 to 80 characters. It may be omitted when updating an existing role.",
|
|
7569
|
+
"- Omit role_name to create a role. Pass the existing role_name to update that role.",
|
|
7570
|
+
"- Functions omitted from role_func_list are preserved by the service as unselected permissions with has_power=0.",
|
|
7571
|
+
"Example create payload:",
|
|
7572
|
+
'{"role_desc":"Data analyst","role_func_list":[{"function_name":"viewReport","has_power":1}]}',
|
|
7573
|
+
"Example update payload:",
|
|
7574
|
+
'{"role_name":"custom_role","role_func_list":[{"function_name":"viewReport","has_power":1}]}'
|
|
7575
|
+
].join("\n");
|
|
6848
7576
|
var projectRoleUpsert = createAnalysisCapabilityCommand({
|
|
6849
7577
|
resource: "project role",
|
|
6850
7578
|
command: "upsert",
|
|
6851
7579
|
capabilityId: "project.role.upsert",
|
|
6852
7580
|
description: "Create or update a project role.",
|
|
7581
|
+
helpText: ROLE_UPSERT_HELP,
|
|
6853
7582
|
flags: [
|
|
6854
7583
|
projectIdFlag,
|
|
6855
|
-
|
|
7584
|
+
{
|
|
7585
|
+
...requiredPayloadFlag,
|
|
7586
|
+
desc: "Role payload with role_func_list object items containing function_name and has_power (0 or 1)."
|
|
7587
|
+
}
|
|
6856
7588
|
],
|
|
6857
7589
|
risk: "write",
|
|
6858
7590
|
buildInput: (ctx) => compactInput({
|
|
@@ -6862,13 +7594,13 @@ var projectRoleUpsert = createAnalysisCapabilityCommand({
|
|
|
6862
7594
|
});
|
|
6863
7595
|
|
|
6864
7596
|
// src/commands/te-analysis/project/role/index.ts
|
|
6865
|
-
var
|
|
7597
|
+
var commands60 = [
|
|
6866
7598
|
projectRoleDelete,
|
|
6867
7599
|
projectRoleGet,
|
|
6868
7600
|
projectRoleList,
|
|
6869
7601
|
projectRoleUpsert
|
|
6870
7602
|
];
|
|
6871
|
-
var role_default =
|
|
7603
|
+
var role_default = commands60;
|
|
6872
7604
|
|
|
6873
7605
|
// src/commands/te-analysis/project/role-function/list.ts
|
|
6874
7606
|
var projectRoleFunctionList = createAnalysisCapabilityCommand({
|
|
@@ -6894,10 +7626,10 @@ var projectRoleFunctionList = createAnalysisCapabilityCommand({
|
|
|
6894
7626
|
});
|
|
6895
7627
|
|
|
6896
7628
|
// src/commands/te-analysis/project/role-function/index.ts
|
|
6897
|
-
var
|
|
7629
|
+
var commands61 = [
|
|
6898
7630
|
projectRoleFunctionList
|
|
6899
7631
|
];
|
|
6900
|
-
var role_function_default =
|
|
7632
|
+
var role_function_default = commands61;
|
|
6901
7633
|
|
|
6902
7634
|
// src/commands/te-analysis/project/role-user/list.ts
|
|
6903
7635
|
var projectRoleUserList = createAnalysisCapabilityCommand({
|
|
@@ -6917,10 +7649,10 @@ var projectRoleUserList = createAnalysisCapabilityCommand({
|
|
|
6917
7649
|
});
|
|
6918
7650
|
|
|
6919
7651
|
// src/commands/te-analysis/project/role-user/index.ts
|
|
6920
|
-
var
|
|
7652
|
+
var commands62 = [
|
|
6921
7653
|
projectRoleUserList
|
|
6922
7654
|
];
|
|
6923
|
-
var role_user_default =
|
|
7655
|
+
var role_user_default = commands62;
|
|
6924
7656
|
|
|
6925
7657
|
// src/commands/te-analysis/project/timezone/get.ts
|
|
6926
7658
|
var projectTimezoneGet = createAnalysisCapabilityCommand({
|
|
@@ -7039,9 +7771,9 @@ function validateDisplayTimezones(value, item) {
|
|
|
7039
7771
|
}
|
|
7040
7772
|
}
|
|
7041
7773
|
}
|
|
7042
|
-
function allowOnly(payload, item,
|
|
7043
|
-
if (Object.keys(payload).some((field) => !
|
|
7044
|
-
throw invalidPayload(item, `supports only fields ${
|
|
7774
|
+
function allowOnly(payload, item, fields2) {
|
|
7775
|
+
if (Object.keys(payload).some((field) => !fields2.includes(field))) {
|
|
7776
|
+
throw invalidPayload(item, `supports only fields ${fields2.join(", ")}`);
|
|
7045
7777
|
}
|
|
7046
7778
|
}
|
|
7047
7779
|
function invalidPayload(item, reason, example) {
|
|
@@ -7058,12 +7790,12 @@ function isObject(value) {
|
|
|
7058
7790
|
}
|
|
7059
7791
|
|
|
7060
7792
|
// src/commands/te-analysis/project/timezone/index.ts
|
|
7061
|
-
var
|
|
7793
|
+
var commands63 = [
|
|
7062
7794
|
projectTimezoneGet,
|
|
7063
7795
|
projectTimezoneOverview,
|
|
7064
7796
|
projectTimezoneUpdate
|
|
7065
7797
|
];
|
|
7066
|
-
var timezone_default =
|
|
7798
|
+
var timezone_default = commands63;
|
|
7067
7799
|
|
|
7068
7800
|
// src/commands/te-analysis/project/user-id-items/update.ts
|
|
7069
7801
|
var projectUserIdItemsUpdate = createAnalysisCapabilityCommand({
|
|
@@ -7083,13 +7815,13 @@ var projectUserIdItemsUpdate = createAnalysisCapabilityCommand({
|
|
|
7083
7815
|
});
|
|
7084
7816
|
|
|
7085
7817
|
// src/commands/te-analysis/project/user-id-items/index.ts
|
|
7086
|
-
var
|
|
7818
|
+
var commands64 = [
|
|
7087
7819
|
projectUserIdItemsUpdate
|
|
7088
7820
|
];
|
|
7089
|
-
var user_id_items_default =
|
|
7821
|
+
var user_id_items_default = commands64;
|
|
7090
7822
|
|
|
7091
7823
|
// src/commands/te-analysis/project/index.ts
|
|
7092
|
-
var
|
|
7824
|
+
var commands65 = [
|
|
7093
7825
|
...access_detail_default,
|
|
7094
7826
|
...data_power_default,
|
|
7095
7827
|
...entity_default2,
|
|
@@ -7110,7 +7842,7 @@ var commands64 = [
|
|
|
7110
7842
|
...timezone_default,
|
|
7111
7843
|
...user_id_items_default
|
|
7112
7844
|
];
|
|
7113
|
-
var project_default =
|
|
7845
|
+
var project_default = commands65;
|
|
7114
7846
|
|
|
7115
7847
|
// src/commands/te-analysis/tracking/shared.ts
|
|
7116
7848
|
function createTrackingCapabilityCommand(config) {
|
|
@@ -7284,12 +8016,12 @@ var confirmFlag = {
|
|
|
7284
8016
|
required: true,
|
|
7285
8017
|
desc: "Must be true for this destructive tracking operation. Also use global --yes to skip local confirmation."
|
|
7286
8018
|
};
|
|
7287
|
-
function
|
|
8019
|
+
function projectInput3(ctx) {
|
|
7288
8020
|
return { project_id: ctx.num("project-id") };
|
|
7289
8021
|
}
|
|
7290
8022
|
function projectLifecycleInput(ctx) {
|
|
7291
8023
|
return compactInput({
|
|
7292
|
-
...
|
|
8024
|
+
...projectInput3(ctx),
|
|
7293
8025
|
request_id: optionalString(ctx, "request-id"),
|
|
7294
8026
|
timeout_seconds: optionalNumber(ctx, "timeout-seconds")
|
|
7295
8027
|
});
|
|
@@ -7303,7 +8035,7 @@ var trackingPlanGet = createTrackingCapabilityCommand({
|
|
|
7303
8035
|
description: "Get the tracking plan for one project.",
|
|
7304
8036
|
flags: [projectIdFlag],
|
|
7305
8037
|
risk: "read",
|
|
7306
|
-
buildInput:
|
|
8038
|
+
buildInput: projectInput3
|
|
7307
8039
|
});
|
|
7308
8040
|
|
|
7309
8041
|
// src/commands/te-analysis/tracking/plan/save-items.ts
|
|
@@ -7315,7 +8047,7 @@ var trackingPlanSaveItems = createTrackingCapabilityCommand({
|
|
|
7315
8047
|
flags: [projectIdFlag, eventsFlag, eventPropsFlag, userPropsFlag, commonEventPropsFlag],
|
|
7316
8048
|
risk: "write",
|
|
7317
8049
|
buildInput: (ctx) => compactInput({
|
|
7318
|
-
...
|
|
8050
|
+
...projectInput3(ctx),
|
|
7319
8051
|
events: optionalJson(ctx, "events"),
|
|
7320
8052
|
event_props: optionalJson(ctx, "event-props"),
|
|
7321
8053
|
user_props: optionalJson(ctx, "user-props"),
|
|
@@ -7332,7 +8064,7 @@ var trackingPlanDeleteItems = createTrackingCapabilityCommand({
|
|
|
7332
8064
|
flags: [projectIdFlag, eventsFlag, eventPropNamesFlag, userPropNamesFlag, commonEventPropNamesFlag, confirmFlag],
|
|
7333
8065
|
risk: "high-risk-write",
|
|
7334
8066
|
buildInput: (ctx) => compactInput({
|
|
7335
|
-
...
|
|
8067
|
+
...projectInput3(ctx),
|
|
7336
8068
|
events: optionalJson(ctx, "events"),
|
|
7337
8069
|
event_prop_names: optionalJson(ctx, "event-prop-names"),
|
|
7338
8070
|
user_prop_names: optionalJson(ctx, "user-prop-names"),
|
|
@@ -7350,7 +8082,7 @@ var trackingPlanGenerate = createTrackingCapabilityCommand({
|
|
|
7350
8082
|
flags: [projectIdFlag, languageFlag, formDataFlag, developmentCarrierFlag, predefinedEventFlag],
|
|
7351
8083
|
risk: "write",
|
|
7352
8084
|
buildInput: (ctx) => compactInput({
|
|
7353
|
-
...
|
|
8085
|
+
...projectInput3(ctx),
|
|
7354
8086
|
language: ctx.str("language"),
|
|
7355
8087
|
form_data: ctx.json("form-data"),
|
|
7356
8088
|
development_carrier: optionalJson(ctx, "development-carrier"),
|
|
@@ -7476,7 +8208,7 @@ function validateSource(ctx) {
|
|
|
7476
8208
|
}
|
|
7477
8209
|
function buildInput(ctx, inputFileId) {
|
|
7478
8210
|
return compactInput({
|
|
7479
|
-
...
|
|
8211
|
+
...projectInput3(ctx),
|
|
7480
8212
|
input_file_id: inputFileId,
|
|
7481
8213
|
lang: optionalString(ctx, "lang")
|
|
7482
8214
|
});
|
|
@@ -7490,7 +8222,7 @@ var trackingPlanSyncFromMeta = createTrackingCapabilityCommand({
|
|
|
7490
8222
|
description: "Synchronize tracking plan from project metadata.",
|
|
7491
8223
|
flags: [projectIdFlag],
|
|
7492
8224
|
risk: "write",
|
|
7493
|
-
buildInput:
|
|
8225
|
+
buildInput: projectInput3
|
|
7494
8226
|
});
|
|
7495
8227
|
|
|
7496
8228
|
// src/commands/te-analysis/tracking/plan/sync-display-names.ts
|
|
@@ -7841,7 +8573,7 @@ function counts(plan, value) {
|
|
|
7841
8573
|
}
|
|
7842
8574
|
|
|
7843
8575
|
// src/commands/te-analysis/tracking/plan/index.ts
|
|
7844
|
-
var
|
|
8576
|
+
var commands66 = [
|
|
7845
8577
|
trackingPlanGet,
|
|
7846
8578
|
trackingPlanSaveItems,
|
|
7847
8579
|
trackingPlanDeleteItems,
|
|
@@ -7851,7 +8583,7 @@ var commands65 = [
|
|
|
7851
8583
|
trackingPlanSyncFromMeta,
|
|
7852
8584
|
trackingPlanSyncDisplayNames
|
|
7853
8585
|
];
|
|
7854
|
-
var plan_default =
|
|
8586
|
+
var plan_default = commands66;
|
|
7855
8587
|
|
|
7856
8588
|
// src/commands/te-analysis/tracking/sdk-sample/generate.ts
|
|
7857
8589
|
var trackingSdkSampleGenerate = createTrackingCapabilityCommand({
|
|
@@ -7861,14 +8593,14 @@ var trackingSdkSampleGenerate = createTrackingCapabilityCommand({
|
|
|
7861
8593
|
description: "Submit an AI SDK sample generation task.",
|
|
7862
8594
|
flags: [projectIdFlag, sdkTypesFlag],
|
|
7863
8595
|
risk: "write",
|
|
7864
|
-
buildInput: (ctx) => ({ ...
|
|
8596
|
+
buildInput: (ctx) => ({ ...projectInput3(ctx), sdk_types: ctx.json("sdk-types") })
|
|
7865
8597
|
});
|
|
7866
8598
|
|
|
7867
8599
|
// src/commands/te-analysis/tracking/sdk-sample/index.ts
|
|
7868
|
-
var
|
|
8600
|
+
var commands67 = [
|
|
7869
8601
|
trackingSdkSampleGenerate
|
|
7870
8602
|
];
|
|
7871
|
-
var sdk_sample_default =
|
|
8603
|
+
var sdk_sample_default = commands67;
|
|
7872
8604
|
|
|
7873
8605
|
// src/commands/te-analysis/tracking/plan-change-log/list.ts
|
|
7874
8606
|
var trackingPlanChangeLogList = createTrackingCapabilityCommand({
|
|
@@ -7878,7 +8610,7 @@ var trackingPlanChangeLogList = createTrackingCapabilityCommand({
|
|
|
7878
8610
|
description: "List tracking plan change logs.",
|
|
7879
8611
|
flags: [projectIdFlag],
|
|
7880
8612
|
risk: "read",
|
|
7881
|
-
buildInput:
|
|
8613
|
+
buildInput: projectInput3
|
|
7882
8614
|
});
|
|
7883
8615
|
|
|
7884
8616
|
// src/commands/te-analysis/tracking/plan-change-log/export.ts
|
|
@@ -7890,15 +8622,15 @@ var trackingPlanChangeLogExport = createTrackingCapabilityCommand({
|
|
|
7890
8622
|
description: "Export one tracking plan change log.",
|
|
7891
8623
|
flags: [projectIdFlag, logIdFlag, requestIdFlag, asyncTimeoutSecondsFlag],
|
|
7892
8624
|
risk: "read",
|
|
7893
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8625
|
+
buildInput: (ctx) => compactInput({ ...projectInput3(ctx), log_id: ctx.num("log-id"), request_id: optionalString(ctx, "request-id"), timeout_seconds: optionalNumber(ctx, "timeout-seconds") })
|
|
7894
8626
|
});
|
|
7895
8627
|
|
|
7896
8628
|
// src/commands/te-analysis/tracking/plan-change-log/index.ts
|
|
7897
|
-
var
|
|
8629
|
+
var commands68 = [
|
|
7898
8630
|
trackingPlanChangeLogList,
|
|
7899
8631
|
trackingPlanChangeLogExport
|
|
7900
8632
|
];
|
|
7901
|
-
var plan_change_log_default =
|
|
8633
|
+
var plan_change_log_default = commands68;
|
|
7902
8634
|
|
|
7903
8635
|
// src/commands/te-analysis/tracking/check/run.ts
|
|
7904
8636
|
var trackingCheckRun = createTrackingCapabilityCommand({
|
|
@@ -7909,7 +8641,7 @@ var trackingCheckRun = createTrackingCapabilityCommand({
|
|
|
7909
8641
|
flags: [projectIdFlag, checkScopeFlag, resultScopeFlag],
|
|
7910
8642
|
risk: "write",
|
|
7911
8643
|
buildInput: (ctx) => compactInput({
|
|
7912
|
-
...
|
|
8644
|
+
...projectInput3(ctx),
|
|
7913
8645
|
check_scope: ctx.json("check-scope"),
|
|
7914
8646
|
result_scope: optionalJson(ctx, "result-scope")
|
|
7915
8647
|
})
|
|
@@ -7923,7 +8655,7 @@ var trackingCheckList = createTrackingCapabilityCommand({
|
|
|
7923
8655
|
description: "List tracking validation runs.",
|
|
7924
8656
|
flags: [projectIdFlag],
|
|
7925
8657
|
risk: "read",
|
|
7926
|
-
buildInput:
|
|
8658
|
+
buildInput: projectInput3
|
|
7927
8659
|
});
|
|
7928
8660
|
|
|
7929
8661
|
// src/commands/te-analysis/tracking/check/get.ts
|
|
@@ -7934,7 +8666,7 @@ var trackingCheckGet = createTrackingCapabilityCommand({
|
|
|
7934
8666
|
description: "Get one tracking validation result.",
|
|
7935
8667
|
flags: [projectIdFlag, uuidFlag, requestIdFlag, timeoutSecondsFlag],
|
|
7936
8668
|
risk: "read",
|
|
7937
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8669
|
+
buildInput: (ctx) => compactInput({ ...projectInput3(ctx), uuid: ctx.str("uuid"), request_id: optionalString(ctx, "request-id"), timeout_seconds: optionalNumber(ctx, "timeout-seconds") })
|
|
7938
8670
|
});
|
|
7939
8671
|
|
|
7940
8672
|
// src/commands/te-analysis/tracking/check/retry.ts
|
|
@@ -7945,7 +8677,7 @@ var trackingCheckRetry = createTrackingCapabilityCommand({
|
|
|
7945
8677
|
description: "Retry one tracking validation run.",
|
|
7946
8678
|
flags: [projectIdFlag, uuidFlag, requestIdFlag, timeoutSecondsFlag],
|
|
7947
8679
|
risk: "write",
|
|
7948
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8680
|
+
buildInput: (ctx) => compactInput({ ...projectInput3(ctx), uuid: ctx.str("uuid"), request_id: optionalString(ctx, "request-id"), timeout_seconds: optionalNumber(ctx, "timeout-seconds") })
|
|
7949
8681
|
});
|
|
7950
8682
|
|
|
7951
8683
|
// src/commands/te-analysis/tracking/check/delete.ts
|
|
@@ -7956,7 +8688,7 @@ var trackingCheckDelete = createTrackingCapabilityCommand({
|
|
|
7956
8688
|
description: "Delete one tracking validation run.",
|
|
7957
8689
|
flags: [projectIdFlag, uuidFlag, confirmFlag],
|
|
7958
8690
|
risk: "high-risk-write",
|
|
7959
|
-
buildInput: (ctx) => ({ ...
|
|
8691
|
+
buildInput: (ctx) => ({ ...projectInput3(ctx), uuid: ctx.str("uuid"), yes: ctx.bool("confirm") })
|
|
7960
8692
|
});
|
|
7961
8693
|
|
|
7962
8694
|
// src/commands/te-analysis/tracking/check/export.ts
|
|
@@ -7968,11 +8700,11 @@ var trackingCheckExport = createTrackingCapabilityCommand({
|
|
|
7968
8700
|
description: "Export one tracking validation result.",
|
|
7969
8701
|
flags: [projectIdFlag, uuidFlag, requestIdFlag, asyncTimeoutSecondsFlag],
|
|
7970
8702
|
risk: "read",
|
|
7971
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8703
|
+
buildInput: (ctx) => compactInput({ ...projectInput3(ctx), uuid: ctx.str("uuid"), request_id: optionalString(ctx, "request-id"), timeout_seconds: optionalNumber(ctx, "timeout-seconds") })
|
|
7972
8704
|
});
|
|
7973
8705
|
|
|
7974
8706
|
// src/commands/te-analysis/tracking/check/index.ts
|
|
7975
|
-
var
|
|
8707
|
+
var commands69 = [
|
|
7976
8708
|
trackingCheckRun,
|
|
7977
8709
|
trackingCheckList,
|
|
7978
8710
|
trackingCheckGet,
|
|
@@ -7980,7 +8712,7 @@ var commands68 = [
|
|
|
7980
8712
|
trackingCheckDelete,
|
|
7981
8713
|
trackingCheckExport
|
|
7982
8714
|
];
|
|
7983
|
-
var check_default =
|
|
8715
|
+
var check_default = commands69;
|
|
7984
8716
|
|
|
7985
8717
|
// src/commands/te-analysis/tracking/ingest/summary.ts
|
|
7986
8718
|
var trackingIngestSummary = createTrackingCapabilityCommand({
|
|
@@ -7990,14 +8722,14 @@ var trackingIngestSummary = createTrackingCapabilityCommand({
|
|
|
7990
8722
|
description: "Get tracking ingest summary.",
|
|
7991
8723
|
flags: [projectIdFlag, startTimeFlag, endTimeFlag],
|
|
7992
8724
|
risk: "read",
|
|
7993
|
-
buildInput: (ctx) => ({ ...
|
|
8725
|
+
buildInput: (ctx) => ({ ...projectInput3(ctx), start_time: ctx.str("start-time"), end_time: ctx.str("end-time") })
|
|
7994
8726
|
});
|
|
7995
8727
|
|
|
7996
8728
|
// src/commands/te-analysis/tracking/ingest/index.ts
|
|
7997
|
-
var
|
|
8729
|
+
var commands70 = [
|
|
7998
8730
|
trackingIngestSummary
|
|
7999
8731
|
];
|
|
8000
|
-
var ingest_default =
|
|
8732
|
+
var ingest_default = commands70;
|
|
8001
8733
|
|
|
8002
8734
|
// src/commands/te-analysis/tracking/ingest-error/list.ts
|
|
8003
8735
|
var trackingIngestErrorList = createTrackingCapabilityCommand({
|
|
@@ -8007,14 +8739,14 @@ var trackingIngestErrorList = createTrackingCapabilityCommand({
|
|
|
8007
8739
|
description: "List tracking ingest errors for one data name.",
|
|
8008
8740
|
flags: [projectIdFlag, dataNameFlag, startTimeFlag, endTimeFlag],
|
|
8009
8741
|
risk: "read",
|
|
8010
|
-
buildInput: (ctx) => ({ ...
|
|
8742
|
+
buildInput: (ctx) => ({ ...projectInput3(ctx), data_name: ctx.str("data-name"), start_time: ctx.str("start-time"), end_time: ctx.str("end-time") })
|
|
8011
8743
|
});
|
|
8012
8744
|
|
|
8013
8745
|
// src/commands/te-analysis/tracking/ingest-error/index.ts
|
|
8014
|
-
var
|
|
8746
|
+
var commands71 = [
|
|
8015
8747
|
trackingIngestErrorList
|
|
8016
8748
|
];
|
|
8017
|
-
var ingest_error_default =
|
|
8749
|
+
var ingest_error_default = commands71;
|
|
8018
8750
|
|
|
8019
8751
|
// src/commands/te-analysis/tracking/live-data/list.ts
|
|
8020
8752
|
var trackingLiveDataList = createTrackingCapabilityCommand({
|
|
@@ -8024,7 +8756,7 @@ var trackingLiveDataList = createTrackingCapabilityCommand({
|
|
|
8024
8756
|
description: "List recent tracking live data.",
|
|
8025
8757
|
flags: [projectIdFlag, dataTypeFlag, requestIdFlag, timeoutSecondsFlag],
|
|
8026
8758
|
risk: "read",
|
|
8027
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8759
|
+
buildInput: (ctx) => compactInput({ ...projectInput3(ctx), data_type: optionalString(ctx, "data-type"), request_id: optionalString(ctx, "request-id"), timeout_seconds: optionalNumber(ctx, "timeout-seconds") })
|
|
8028
8760
|
});
|
|
8029
8761
|
|
|
8030
8762
|
// src/commands/te-analysis/tracking/live-data/export.ts
|
|
@@ -8036,15 +8768,15 @@ var trackingLiveDataExport = createTrackingCapabilityCommand({
|
|
|
8036
8768
|
description: "Export recent tracking live data.",
|
|
8037
8769
|
flags: [projectIdFlag, dataTypeFlag, requestIdFlag, asyncTimeoutSecondsFlag],
|
|
8038
8770
|
risk: "read",
|
|
8039
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8771
|
+
buildInput: (ctx) => compactInput({ ...projectInput3(ctx), data_type: optionalString(ctx, "data-type"), request_id: optionalString(ctx, "request-id"), timeout_seconds: optionalNumber(ctx, "timeout-seconds") })
|
|
8040
8772
|
});
|
|
8041
8773
|
|
|
8042
8774
|
// src/commands/te-analysis/tracking/live-data/index.ts
|
|
8043
|
-
var
|
|
8775
|
+
var commands72 = [
|
|
8044
8776
|
trackingLiveDataList,
|
|
8045
8777
|
trackingLiveDataExport
|
|
8046
8778
|
];
|
|
8047
|
-
var live_data_default =
|
|
8779
|
+
var live_data_default = commands72;
|
|
8048
8780
|
|
|
8049
8781
|
// src/commands/te-analysis/tracking/event-blacklist/list.ts
|
|
8050
8782
|
var trackingEventBlacklistList = createTrackingCapabilityCommand({
|
|
@@ -8054,7 +8786,7 @@ var trackingEventBlacklistList = createTrackingCapabilityCommand({
|
|
|
8054
8786
|
description: "List tracking event blacklist configuration.",
|
|
8055
8787
|
flags: [projectIdFlag],
|
|
8056
8788
|
risk: "read",
|
|
8057
|
-
buildInput:
|
|
8789
|
+
buildInput: projectInput3
|
|
8058
8790
|
});
|
|
8059
8791
|
|
|
8060
8792
|
// src/commands/te-analysis/tracking/event-blacklist/add.ts
|
|
@@ -8065,7 +8797,7 @@ var trackingEventBlacklistAdd = createTrackingCapabilityCommand({
|
|
|
8065
8797
|
description: "Add events to tracking event blacklist.",
|
|
8066
8798
|
flags: [projectIdFlag, eventNamesFlag],
|
|
8067
8799
|
risk: "write",
|
|
8068
|
-
buildInput: (ctx) => ({ ...
|
|
8800
|
+
buildInput: (ctx) => ({ ...projectInput3(ctx), event_names: ctx.json("event-names") })
|
|
8069
8801
|
});
|
|
8070
8802
|
|
|
8071
8803
|
// src/commands/te-analysis/tracking/event-blacklist/update.ts
|
|
@@ -8076,16 +8808,16 @@ var trackingEventBlacklistUpdate = createTrackingCapabilityCommand({
|
|
|
8076
8808
|
description: "Update tracking event blacklist config.",
|
|
8077
8809
|
flags: [projectIdFlag, eventNamesFlag, blacklistTypeFlag],
|
|
8078
8810
|
risk: "write",
|
|
8079
|
-
buildInput: (ctx) => ({ ...
|
|
8811
|
+
buildInput: (ctx) => ({ ...projectInput3(ctx), event_names: ctx.json("event-names"), type: ctx.num("type") })
|
|
8080
8812
|
});
|
|
8081
8813
|
|
|
8082
8814
|
// src/commands/te-analysis/tracking/event-blacklist/index.ts
|
|
8083
|
-
var
|
|
8815
|
+
var commands73 = [
|
|
8084
8816
|
trackingEventBlacklistList,
|
|
8085
8817
|
trackingEventBlacklistAdd,
|
|
8086
8818
|
trackingEventBlacklistUpdate
|
|
8087
8819
|
];
|
|
8088
|
-
var event_blacklist_default =
|
|
8820
|
+
var event_blacklist_default = commands73;
|
|
8089
8821
|
|
|
8090
8822
|
// src/commands/te-analysis/tracking/debug-device/add.ts
|
|
8091
8823
|
var trackingDebugDeviceAdd = createTrackingCapabilityCommand({
|
|
@@ -8096,7 +8828,7 @@ var trackingDebugDeviceAdd = createTrackingCapabilityCommand({
|
|
|
8096
8828
|
flags: [projectIdFlag, debugDeviceIdFlag, debugDeviceNameFlag],
|
|
8097
8829
|
risk: "write",
|
|
8098
8830
|
buildInput: (ctx) => ({
|
|
8099
|
-
...
|
|
8831
|
+
...projectInput3(ctx),
|
|
8100
8832
|
device_id: ctx.str("device-id"),
|
|
8101
8833
|
device_name: ctx.str("device-name")
|
|
8102
8834
|
})
|
|
@@ -8110,7 +8842,7 @@ var trackingDebugDeviceList = createTrackingCapabilityCommand({
|
|
|
8110
8842
|
description: "List Debug devices and the device selected by the current CLI user.",
|
|
8111
8843
|
flags: [projectIdFlag],
|
|
8112
8844
|
risk: "read",
|
|
8113
|
-
buildInput:
|
|
8845
|
+
buildInput: projectInput3
|
|
8114
8846
|
});
|
|
8115
8847
|
|
|
8116
8848
|
// src/commands/te-analysis/tracking/debug-device/select.ts
|
|
@@ -8122,18 +8854,18 @@ var trackingDebugDeviceSelect = createTrackingCapabilityCommand({
|
|
|
8122
8854
|
flags: [projectIdFlag, debugDeviceIdFlag],
|
|
8123
8855
|
risk: "write",
|
|
8124
8856
|
buildInput: (ctx) => ({
|
|
8125
|
-
...
|
|
8857
|
+
...projectInput3(ctx),
|
|
8126
8858
|
device_id: ctx.str("device-id")
|
|
8127
8859
|
})
|
|
8128
8860
|
});
|
|
8129
8861
|
|
|
8130
8862
|
// src/commands/te-analysis/tracking/debug-device/index.ts
|
|
8131
|
-
var
|
|
8863
|
+
var commands74 = [
|
|
8132
8864
|
trackingDebugDeviceList,
|
|
8133
8865
|
trackingDebugDeviceAdd,
|
|
8134
8866
|
trackingDebugDeviceSelect
|
|
8135
8867
|
];
|
|
8136
|
-
var debug_device_default =
|
|
8868
|
+
var debug_device_default = commands74;
|
|
8137
8869
|
|
|
8138
8870
|
// src/commands/te-analysis/tracking/debug-data/list.ts
|
|
8139
8871
|
var debugStartTimeFlag = {
|
|
@@ -8150,7 +8882,7 @@ var trackingDebugDataList = createTrackingCapabilityCommand({
|
|
|
8150
8882
|
flags: [projectIdFlag, debugDeviceIdFlag, debugStartTimeFlag, eventNameFlag],
|
|
8151
8883
|
risk: "read",
|
|
8152
8884
|
buildInput: (ctx) => compactInput({
|
|
8153
|
-
...
|
|
8885
|
+
...projectInput3(ctx),
|
|
8154
8886
|
device_id: ctx.str("device-id"),
|
|
8155
8887
|
start_time: optionalString(ctx, "start-time") ?? formatLocalTime(new Date(Date.now() - 60 * 60 * 1e3)),
|
|
8156
8888
|
event_name: optionalString(ctx, "event-name")
|
|
@@ -8192,11 +8924,11 @@ function isRecord3(value) {
|
|
|
8192
8924
|
}
|
|
8193
8925
|
|
|
8194
8926
|
// src/commands/te-analysis/tracking/debug-data/index.ts
|
|
8195
|
-
var
|
|
8196
|
-
var debug_data_default =
|
|
8927
|
+
var commands75 = [trackingDebugDataList];
|
|
8928
|
+
var debug_data_default = commands75;
|
|
8197
8929
|
|
|
8198
8930
|
// src/commands/te-analysis/tracking/index.ts
|
|
8199
|
-
var
|
|
8931
|
+
var commands76 = [
|
|
8200
8932
|
...plan_default,
|
|
8201
8933
|
...sdk_sample_default,
|
|
8202
8934
|
...plan_change_log_default,
|
|
@@ -8208,7 +8940,7 @@ var commands75 = [
|
|
|
8208
8940
|
...debug_device_default,
|
|
8209
8941
|
...debug_data_default
|
|
8210
8942
|
];
|
|
8211
|
-
var tracking_default =
|
|
8943
|
+
var tracking_default = commands76;
|
|
8212
8944
|
|
|
8213
8945
|
// src/commands/te-analysis/alert/shared.ts
|
|
8214
8946
|
var alertIdFlag = {
|
|
@@ -8235,11 +8967,11 @@ var endTimeFlag2 = {
|
|
|
8235
8967
|
required: false,
|
|
8236
8968
|
desc: "Optional alert detail end time."
|
|
8237
8969
|
};
|
|
8238
|
-
function
|
|
8970
|
+
function projectInput4(ctx) {
|
|
8239
8971
|
return { project_id: ctx.num("project-id") };
|
|
8240
8972
|
}
|
|
8241
8973
|
function alertIdInput(ctx) {
|
|
8242
|
-
return { ...
|
|
8974
|
+
return { ...projectInput4(ctx), alert_id: ctx.num("alert-id") };
|
|
8243
8975
|
}
|
|
8244
8976
|
|
|
8245
8977
|
// src/commands/te-analysis/alert/list.ts
|
|
@@ -8251,7 +8983,7 @@ var analysisAlertList = createAnalysisCapabilityCommand({
|
|
|
8251
8983
|
flags: [projectIdFlag, queriesFlag, directoryLimitFlag, directoryOffsetFlag],
|
|
8252
8984
|
risk: "read",
|
|
8253
8985
|
validate: validateQueriesFlag,
|
|
8254
|
-
buildInput: (ctx) => compactInput({ ...
|
|
8986
|
+
buildInput: (ctx) => compactInput({ ...projectInput4(ctx), queries: optionalQueries(ctx), limit: optionalNumber(ctx, "limit"), offset: optionalNumber(ctx, "offset") })
|
|
8255
8987
|
});
|
|
8256
8988
|
|
|
8257
8989
|
// src/commands/te-analysis/alert/get.ts
|
|
@@ -8273,7 +9005,7 @@ var analysisAlertCreate = createAnalysisCapabilityCommand({
|
|
|
8273
9005
|
description: "Create an alert.",
|
|
8274
9006
|
flags: [projectIdFlag, definitionRequestFlag],
|
|
8275
9007
|
risk: "write",
|
|
8276
|
-
buildInput: (ctx) => ({ ...
|
|
9008
|
+
buildInput: (ctx) => ({ ...projectInput4(ctx), definition_request: ctx.json("definition-request") })
|
|
8277
9009
|
});
|
|
8278
9010
|
|
|
8279
9011
|
// src/commands/te-analysis/alert/update.ts
|
|
@@ -8321,7 +9053,7 @@ var analysisAlertStop = createAnalysisCapabilityCommand({
|
|
|
8321
9053
|
});
|
|
8322
9054
|
|
|
8323
9055
|
// src/commands/te-analysis/alert/index.ts
|
|
8324
|
-
var
|
|
9056
|
+
var commands77 = [
|
|
8325
9057
|
analysisAlertList,
|
|
8326
9058
|
analysisAlertGet,
|
|
8327
9059
|
analysisAlertCreate,
|
|
@@ -8330,7 +9062,7 @@ var commands76 = [
|
|
|
8330
9062
|
analysisAlertStart,
|
|
8331
9063
|
analysisAlertStop
|
|
8332
9064
|
];
|
|
8333
|
-
var alert_default =
|
|
9065
|
+
var alert_default = commands77;
|
|
8334
9066
|
|
|
8335
9067
|
// src/commands/te-analysis/alert-detail/list.ts
|
|
8336
9068
|
var analysisAlertDetailList = createAnalysisCapabilityCommand({
|
|
@@ -8344,10 +9076,10 @@ var analysisAlertDetailList = createAnalysisCapabilityCommand({
|
|
|
8344
9076
|
});
|
|
8345
9077
|
|
|
8346
9078
|
// src/commands/te-analysis/alert-detail/index.ts
|
|
8347
|
-
var
|
|
9079
|
+
var commands78 = [
|
|
8348
9080
|
analysisAlertDetailList
|
|
8349
9081
|
];
|
|
8350
|
-
var alert_detail_default =
|
|
9082
|
+
var alert_detail_default = commands78;
|
|
8351
9083
|
|
|
8352
9084
|
// src/commands/te-analysis/alert-job/list.ts
|
|
8353
9085
|
var analysisAlertJobList = createAnalysisCapabilityCommand({
|
|
@@ -8357,14 +9089,14 @@ var analysisAlertJobList = createAnalysisCapabilityCommand({
|
|
|
8357
9089
|
description: "List alert job status.",
|
|
8358
9090
|
flags: [projectIdFlag],
|
|
8359
9091
|
risk: "read",
|
|
8360
|
-
buildInput:
|
|
9092
|
+
buildInput: projectInput4
|
|
8361
9093
|
});
|
|
8362
9094
|
|
|
8363
9095
|
// src/commands/te-analysis/alert-job/index.ts
|
|
8364
|
-
var
|
|
9096
|
+
var commands79 = [
|
|
8365
9097
|
analysisAlertJobList
|
|
8366
9098
|
];
|
|
8367
|
-
var alert_job_default =
|
|
9099
|
+
var alert_job_default = commands79;
|
|
8368
9100
|
|
|
8369
9101
|
// src/commands/te-analysis/alert-notice-config/list.ts
|
|
8370
9102
|
var analysisAlertNoticeConfigList = createAnalysisCapabilityCommand({
|
|
@@ -8374,17 +9106,17 @@ var analysisAlertNoticeConfigList = createAnalysisCapabilityCommand({
|
|
|
8374
9106
|
description: "List alert notice configs.",
|
|
8375
9107
|
flags: [projectIdFlag],
|
|
8376
9108
|
risk: "read",
|
|
8377
|
-
buildInput:
|
|
9109
|
+
buildInput: projectInput4
|
|
8378
9110
|
});
|
|
8379
9111
|
|
|
8380
9112
|
// src/commands/te-analysis/alert-notice-config/index.ts
|
|
8381
|
-
var
|
|
9113
|
+
var commands80 = [
|
|
8382
9114
|
analysisAlertNoticeConfigList
|
|
8383
9115
|
];
|
|
8384
|
-
var alert_notice_config_default =
|
|
9116
|
+
var alert_notice_config_default = commands80;
|
|
8385
9117
|
|
|
8386
9118
|
// src/commands/te-analysis/system/shared.ts
|
|
8387
|
-
import { readFileSync as
|
|
9119
|
+
import { readFileSync as readFileSync3, statSync as statSync3 } from "fs";
|
|
8388
9120
|
var secretValues = /* @__PURE__ */ new WeakMap();
|
|
8389
9121
|
var companyIdField = {
|
|
8390
9122
|
flag: "company-id",
|
|
@@ -8419,7 +9151,7 @@ var fieldsField = {
|
|
|
8419
9151
|
desc: "Optional snake_case result field projection JSON array."
|
|
8420
9152
|
};
|
|
8421
9153
|
function defineSystemCommand(spec) {
|
|
8422
|
-
const
|
|
9154
|
+
const fields2 = [companyIdField, ...spec.fields ?? []];
|
|
8423
9155
|
const secrets = spec.secrets ?? [];
|
|
8424
9156
|
return createAnalysisCapabilityCommand({
|
|
8425
9157
|
resource: `system ${spec.resource}`,
|
|
@@ -8428,24 +9160,24 @@ function defineSystemCommand(spec) {
|
|
|
8428
9160
|
asyncArtifact: spec.asyncArtifact,
|
|
8429
9161
|
description: spec.description,
|
|
8430
9162
|
flags: [
|
|
8431
|
-
...
|
|
9163
|
+
...fields2.map(fieldFlag),
|
|
8432
9164
|
...secrets.flatMap(secretFlags)
|
|
8433
9165
|
],
|
|
8434
9166
|
risk: spec.risk,
|
|
8435
9167
|
validate: (ctx) => {
|
|
8436
9168
|
validateSecretSources(ctx, secrets);
|
|
8437
|
-
const input = buildSystemInput(ctx,
|
|
9169
|
+
const input = buildSystemInput(ctx, fields2, [], spec.risk);
|
|
8438
9170
|
for (const secret of secrets) {
|
|
8439
9171
|
if (ctx.str(`${secret.flag}-file`) || ctx.bool(`${secret.flag}-stdin`)) {
|
|
8440
9172
|
input[secret.input] = "<provided>";
|
|
8441
9173
|
}
|
|
8442
9174
|
}
|
|
8443
|
-
validateFields(
|
|
9175
|
+
validateFields(fields2, input);
|
|
8444
9176
|
spec.validate?.(ctx, input);
|
|
8445
9177
|
},
|
|
8446
9178
|
buildInput: (ctx) => {
|
|
8447
|
-
const input = buildSystemInput(ctx,
|
|
8448
|
-
validateFields(
|
|
9179
|
+
const input = buildSystemInput(ctx, fields2, secrets, spec.risk);
|
|
9180
|
+
validateFields(fields2, input);
|
|
8449
9181
|
validateSecretSources(ctx, secrets);
|
|
8450
9182
|
spec.validate?.(ctx, input);
|
|
8451
9183
|
return input;
|
|
@@ -8481,9 +9213,9 @@ function secretFlags(secret) {
|
|
|
8481
9213
|
}
|
|
8482
9214
|
];
|
|
8483
9215
|
}
|
|
8484
|
-
function buildSystemInput(ctx,
|
|
9216
|
+
function buildSystemInput(ctx, fields2, secrets, risk) {
|
|
8485
9217
|
const input = {};
|
|
8486
|
-
for (const field of
|
|
9218
|
+
for (const field of fields2) {
|
|
8487
9219
|
const value = fieldValue(ctx, field);
|
|
8488
9220
|
if (value !== void 0) input[field.input ?? kebabToSnake(field.flag)] = value;
|
|
8489
9221
|
}
|
|
@@ -8502,8 +9234,8 @@ function fieldValue(ctx, field) {
|
|
|
8502
9234
|
if (field.type === "boolean") return ctx.bool(field.flag);
|
|
8503
9235
|
return ctx.json(field.flag);
|
|
8504
9236
|
}
|
|
8505
|
-
function validateFields(
|
|
8506
|
-
for (const field of
|
|
9237
|
+
function validateFields(fields2, input) {
|
|
9238
|
+
for (const field of fields2) {
|
|
8507
9239
|
const inputName = field.input ?? kebabToSnake(field.flag);
|
|
8508
9240
|
const value = input[inputName];
|
|
8509
9241
|
if (field.required && value === void 0) {
|
|
@@ -8552,9 +9284,9 @@ function secretValue(ctx, secret) {
|
|
|
8552
9284
|
if ((stat.mode & 63) !== 0) {
|
|
8553
9285
|
throw validation(`--${secret.flag}-file must not be readable or writable by group/others (use chmod 600).`);
|
|
8554
9286
|
}
|
|
8555
|
-
value = nonEmptySecret(
|
|
9287
|
+
value = nonEmptySecret(readFileSync3(file, "utf8"), secret.flag);
|
|
8556
9288
|
} else if (ctx.bool(`${secret.flag}-stdin`)) {
|
|
8557
|
-
value = nonEmptySecret(
|
|
9289
|
+
value = nonEmptySecret(readFileSync3(0, "utf8"), secret.flag);
|
|
8558
9290
|
}
|
|
8559
9291
|
values.set(secret.flag, value);
|
|
8560
9292
|
return value;
|
|
@@ -8731,7 +9463,7 @@ var systemConfigurationCommands = [
|
|
|
8731
9463
|
command: "get",
|
|
8732
9464
|
capabilityId: "system.receiver_detection.get",
|
|
8733
9465
|
description: "Get receiver-address detection configuration.",
|
|
8734
|
-
risk: "
|
|
9466
|
+
risk: "write",
|
|
8735
9467
|
fields: [addressUrl]
|
|
8736
9468
|
}),
|
|
8737
9469
|
defineSystemCommand({
|
|
@@ -9120,7 +9852,7 @@ var systemMonitoringCommands = [
|
|
|
9120
9852
|
risk: "read",
|
|
9121
9853
|
fields: [
|
|
9122
9854
|
{ flag: "task-id", type: "string", required: true, desc: "Query-monitor task ID." },
|
|
9123
|
-
{ flag: "sql-max-chars", type: "number", min: 0, max:
|
|
9855
|
+
{ flag: "sql-max-chars", type: "number", min: 0, max: 2e4, desc: "Maximum returned SQL characters. Max: 20000." }
|
|
9124
9856
|
]
|
|
9125
9857
|
}),
|
|
9126
9858
|
defineSystemCommand({
|
|
@@ -9223,7 +9955,7 @@ var systemMonitoringCommands = [
|
|
|
9223
9955
|
description: "List sanitized operations-alert contacts.",
|
|
9224
9956
|
risk: "read",
|
|
9225
9957
|
fields: [
|
|
9226
|
-
{ flag: "limit", type: "number", min: 1, max:
|
|
9958
|
+
{ flag: "limit", type: "number", min: 1, max: 100, desc: "Page size. Default: 50, max: 100." },
|
|
9227
9959
|
offsetField
|
|
9228
9960
|
]
|
|
9229
9961
|
}),
|
|
@@ -9445,14 +10177,14 @@ var systemUsageCommands = [
|
|
|
9445
10177
|
];
|
|
9446
10178
|
|
|
9447
10179
|
// src/commands/te-analysis/system/index.ts
|
|
9448
|
-
var
|
|
10180
|
+
var commands81 = [
|
|
9449
10181
|
...systemUsageCommands,
|
|
9450
10182
|
...systemIdentityCommands,
|
|
9451
10183
|
...systemSecurityCommands,
|
|
9452
10184
|
...systemMonitoringCommands,
|
|
9453
10185
|
...systemConfigurationCommands
|
|
9454
10186
|
];
|
|
9455
|
-
var system_default =
|
|
10187
|
+
var system_default = commands81;
|
|
9456
10188
|
|
|
9457
10189
|
// src/commands/te-analysis/index.ts
|
|
9458
10190
|
registerCapabilityGatewayRoute("analysis", { gatewayDomain: "analysis" });
|
|
@@ -9502,8 +10234,8 @@ var baseCommands = [
|
|
|
9502
10234
|
...alert_notice_config_default,
|
|
9503
10235
|
...system_default
|
|
9504
10236
|
];
|
|
9505
|
-
var
|
|
9506
|
-
var te_analysis_default =
|
|
10237
|
+
var commands82 = [...baseCommands];
|
|
10238
|
+
var te_analysis_default = commands82;
|
|
9507
10239
|
export {
|
|
9508
10240
|
baseCommands,
|
|
9509
10241
|
te_analysis_default as default
|