@thinkingai/ae-cli 6.1.11 → 6.1.13
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 +0 -2
- package/README.zh.md +0 -2
- package/dist/{auth-NN55553T.js → auth-GBMV6TEJ.js} +2 -2
- package/dist/{auth-GDV3H5I4.js → auth-NDSXE54J.js} +4 -4
- package/dist/{capability-TPORIKRQ.js → capability-TAMDRZYV.js} +23 -10
- package/dist/{capability-VQNC5CF7.js → capability-U7TDEEEG.js} +23 -10
- package/dist/{chunk-GJJA4CQZ.js → chunk-3FY3RJ26.js} +0 -4
- package/dist/{chunk-GS2P7LFD.js → chunk-5XUSIK27.js} +2 -2
- package/dist/{chunk-7KQWSBSL.js → chunk-753BUTNZ.js} +3 -3
- package/dist/{chunk-VTXHDCBW.js → chunk-AFXA7BRK.js} +2 -2
- package/dist/chunk-IBH3LDAH.js +556 -0
- package/dist/{chunk-RBNKI5ZW.js → chunk-JUW4AJXN.js} +2 -2
- package/dist/{chunk-TS6BUGUY.js → chunk-QATA32VR.js} +3 -3
- package/dist/{chunk-Z3OXWCIA.js → chunk-S5NTSDBS.js} +2 -2
- package/dist/chunk-UIHQJK5E.js +556 -0
- package/dist/{chunk-VKD5WQKN.js → chunk-VLWOLBGZ.js} +142 -24
- package/dist/{chunk-YTG6Q75E.js → chunk-WZRX4KOH.js} +25 -3
- package/dist/{chunk-YV52FB5G.js → chunk-ZQKDZXDO.js} +1 -1
- package/dist/{cli-token-GL5MS5FK.js → cli-token-4UPER74P.js} +3 -3
- package/dist/{chunk-6A2FUCIS.js → client-L2YDMHQ6.js} +5 -6
- package/dist/{config-4VZNLBKF.js → config-OL2LWGBV.js} +4 -33
- package/dist/index.js +25 -38
- package/dist/{memory-RWJW4XFO.js → memory-MUP7PPL7.js} +4 -4
- package/dist/{memory-VO2ZJCRT.js → memory-U4O5PMXH.js} +4 -4
- package/dist/{metadata-YGTHR2XJ.js → metadata-UORZTW3T.js} +21 -11
- package/dist/{metadata-ZRN2GHPN.js → metadata-VVQ3AQT5.js} +21 -11
- package/dist/{model-CLUIK3K5.js → model-JTUEO5M4.js} +2 -2
- package/dist/{sync-3REDHGY6.js → sync-MOSFNBVR.js} +5 -5
- package/dist/{te-agent-XNPELAKX.js → te-agent-IFKZDHZI.js} +25 -18
- package/dist/{te-analysis-GJI5FZUL.js → te-analysis-KOKHJJPE.js} +1225 -450
- package/dist/{te-analysis-N2BRDJZ5.js → te-analysis-LLOCCBJ4.js} +1225 -450
- package/dist/{te-community-SQXKE5OO.js → te-community-HNKVTERD.js} +207 -12
- package/dist/{te-community-TYSNU3NQ.js → te-community-IWE5B7W6.js} +208 -12
- package/dist/{te-dataops-OWIADNSM.js → te-dataops-KQPYNAE3.js} +262 -145
- package/dist/{te-dataops-5TM7WZDI.js → te-dataops-KXCEB4CS.js} +262 -145
- package/dist/{te-engage-F7V55KVW.js → te-engage-BRLSRVQT.js} +960 -41
- package/dist/{te-engage-FMYAYCNV.js → te-engage-HE4OPZIT.js} +960 -41
- package/dist/{te-experiment-JWXOYJ3W.js → te-experiment-K5US7RMG.js} +115 -9
- package/dist/{te-experiment-UPDMHCAJ.js → te-experiment-WA7TFMEL.js} +115 -9
- package/dist/{te-kb-VRMEY3D4.js → te-kb-OIH3T6CS.js} +4 -4
- package/dist/{te-system-XGS5EQIQ.js → te-system-AZ3URMUO.js} +515 -11
- package/dist/{te-team-BZRDV2CM.js → te-team-GZPU6UWA.js} +5 -5
- package/dist/{update-HEDXGOJH.js → update-TOBFXF2V.js} +4 -4
- package/package.json +6 -6
- package/skills/ae-agent/SKILL.md +3 -3
- package/skills/ae-agent/references/list-skill-references.md +4 -4
- package/skills/ae-agent/references/read-skill-reference.md +10 -7
- package/skills/ae-agent/references/upload-skill-reference.md +11 -9
- package/skills/ae-analysis/SKILL.md +15 -12
- package/skills/ae-analysis/metadata_resolution.md +150 -0
- package/skills/ae-analysis/references/adhoc_export.md +17 -2
- package/skills/ae-analysis/references/adhoc_run.md +12 -8
- package/skills/ae-analysis/references/ai_models.md +31 -5
- package/skills/ae-analysis/references/analysis_data_retrieval.md +104 -16
- package/skills/ae-analysis/references/analysis_drilldown_contract.md +4 -4
- package/skills/ae-analysis/references/analysis_gateway_assets.md +12 -10
- package/skills/ae-analysis/references/artifact_download.md +4 -3
- package/skills/ae-analysis/references/asset_abnormal_list.md +5 -3
- package/skills/ae-analysis/references/asset_authentication_list.md +5 -3
- package/skills/ae-analysis/references/asset_search.md +5 -3
- package/skills/ae-analysis/references/bi_panel_page_data_export.md +1 -1
- package/skills/ae-analysis/references/bi_panel_page_data_run.md +4 -4
- package/skills/ae-analysis/references/catalog_export.md +28 -0
- package/skills/ae-analysis/references/catalog_list.md +44 -0
- package/skills/ae-analysis/references/command_index.md +72 -63
- package/skills/ae-analysis/references/dashboard_report_data_run.md +11 -4
- package/skills/ae-analysis/references/datatable_version_list.md +5 -3
- package/skills/ae-analysis/references/drilldown_entities_run.md +4 -4
- package/skills/ae-analysis/references/drilldown_events_run.md +2 -2
- package/skills/ae-analysis/references/drilldown_user_events_export.md +1 -1
- package/skills/ae-analysis/references/drilldown_user_events_run.md +2 -2
- package/skills/ae-analysis/references/entity_detail_run.md +4 -4
- package/skills/ae-analysis/references/entity_id_import_options.md +1 -1
- package/skills/ae-analysis/references/event_detail_run.md +4 -4
- package/skills/ae-analysis/references/event_export.md +21 -0
- package/skills/ae-analysis/references/event_list.md +7 -6
- package/skills/ae-analysis/references/exchange_rule_list.md +5 -3
- package/skills/ae-analysis/references/history_tag_data_drilldown_export.md +4 -2
- package/skills/ae-analysis/references/history_tag_data_drilldown_run.md +2 -2
- package/skills/ae-analysis/references/history_tag_data_run.md +2 -2
- package/skills/ae-analysis/references/metric_export.md +21 -0
- package/skills/ae-analysis/references/metric_list.md +8 -7
- package/skills/ae-analysis/references/property_export.md +21 -0
- package/skills/ae-analysis/references/property_list.md +9 -8
- package/skills/ae-analysis/references/query_context_get.md +20 -0
- package/skills/ae-analysis/references/query_create_result_cluster.md +1 -1
- package/skills/ae-analysis/references/report_change_log_list.md +1 -1
- package/skills/ae-analysis/references/report_create.md +3 -3
- package/skills/ae-analysis/references/report_data_run.md +8 -8
- package/skills/ae-analysis/references/report_update.md +3 -3
- package/skills/ae-analysis/references/report_version_rollback.md +1 -1
- package/skills/ae-analysis/references/rule_list.md +6 -4
- package/skills/ae-analysis/references/run_inspect.md +8 -5
- package/skills/ae-analysis/references/run_wait.md +37 -0
- package/skills/ae-analysis/references/user_cluster_export.md +13 -0
- package/skills/ae-analysis/references/user_cluster_list.md +6 -2
- package/skills/ae-analysis/references/user_cluster_member_export.md +5 -3
- package/skills/ae-analysis/references/user_cluster_member_list.md +4 -4
- package/skills/ae-analysis/references/user_tag_export.md +13 -0
- package/skills/ae-analysis/references/user_tag_list.md +6 -2
- package/skills/ae-analysis/references/user_tag_member_export.md +5 -3
- package/skills/ae-analysis/references/user_tag_member_list.md +4 -4
- package/skills/ae-analysis/references/virtual_property_create.md +2 -2
- package/skills/ae-community/SKILL.md +2 -2
- package/skills/ae-dataops/SKILL.md +4 -3
- package/skills/ae-dataops/references/dataops-flow-create.md +47 -3
- package/skills/ae-engage/SKILL.md +57 -7
- package/skills/ae-engage/references/activity-data-detail.md +61 -0
- package/skills/ae-engage/references/build-task-save-guide.md +37 -1
- package/skills/ae-engage/references/cancel-query-run.md +31 -0
- package/skills/ae-engage/references/common-metric.md +45 -0
- package/skills/ae-engage/references/config-item-analysis-report.md +14 -1
- package/skills/ae-engage/references/config-item-strategy-comparison.md +11 -1
- package/skills/ae-engage/references/config-item-trigger-report.md +15 -1
- package/skills/ae-engage/references/flow-metric-detail-report.md +134 -0
- package/skills/ae-engage/references/flow-metric-update.md +77 -0
- package/skills/ae-engage/references/flow-metric-user.md +118 -0
- package/skills/ae-engage/references/flow-node-metric-user.md +122 -0
- package/skills/ae-engage/references/flow-node-user.md +122 -0
- package/skills/ae-engage/references/preset-event.md +2 -0
- package/skills/ae-engage/references/push-record-query.md +32 -1
- package/skills/ae-engage/references/save-flow.md +14 -0
- package/skills/ae-engage/references/save-task.md +44 -0
- package/skills/ae-engage/references/scene-strategy-audience.md +12 -7
- package/skills/ae-engage/references/task-data-detail.md +9 -2
- package/skills/ae-engage/references/task-metric-detail.md +9 -2
- package/skills/ae-engage/references/task-submit-approval.md +3 -0
- package/skills/ae-experiment/SKILL.md +17 -4
- package/skills/ae-experiment/references/delete_metric.md +2 -0
- package/skills/ae-experiment/references/query_experiment_metric_trend.md +5 -5
- package/skills/ae-experiment/references/query_experiment_report_summary.md +4 -3
- package/skills/ae-experiment/references/query_experiment_sample_size_report.md +6 -5
- package/skills/ae-experiment/references/save_build_guide.md +39 -0
- package/skills/ae-experiment/references/save_experiment.md +11 -0
- package/skills/ae-experiment/references/save_metric.md +5 -1
- package/skills/ae-experiment/references/save_validate.md +33 -0
- package/skills/ae-experiment-design/SKILL.md +1 -1
- package/skills/ae-experiment-design/references/platform-operations.md +10 -4
- package/skills/ae-experiment-insight/references/platform-operations.md +10 -4
- package/skills/ae-metadata/SKILL.md +2 -1
- package/skills/ae-metadata/references/metadata_data_table_download.md +10 -2
- package/skills/ae-metadata/references/metadata_data_table_list.md +5 -2
- package/skills/ae-system/SKILL.md +66 -3
- package/dist/chunk-DT6Y3TD7.js +0 -232
- package/dist/chunk-MVDZ7DBQ.js +0 -231
- package/dist/chunk-NBPKWKRA.js +0 -51
- package/dist/client-DAIPF7XN.js +0 -23
- package/dist/raw-52B4UKO4.js +0 -71
- package/dist/te-meta-53BVXPFI.js +0 -95
- package/dist/te-meta-TOCBPBXI.js +0 -95
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createCapabilityCommand
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-753BUTNZ.js";
|
|
4
4
|
import {
|
|
5
5
|
registerCapabilityGatewayRoute
|
|
6
6
|
} from "./chunk-PTE56QPL.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-WZRX4KOH.js";
|
|
8
|
+
import "./chunk-5XUSIK27.js";
|
|
9
|
+
import "./chunk-S5NTSDBS.js";
|
|
10
|
+
import "./chunk-ZQKDZXDO.js";
|
|
11
|
+
import "./chunk-3FY3RJ26.js";
|
|
12
12
|
import "./chunk-AXDXJTPC.js";
|
|
13
13
|
import "./chunk-JHENBQ5B.js";
|
|
14
14
|
|
|
@@ -37,6 +37,9 @@ function readRequiredStringArray(ctx, name) {
|
|
|
37
37
|
function addOptionalString(input, name, value) {
|
|
38
38
|
if (value !== "") input[name] = value;
|
|
39
39
|
}
|
|
40
|
+
function addOptionalBoolean(input, ctx, flagName, fieldName) {
|
|
41
|
+
if (ctx.str(flagName) !== "") input[fieldName] = ctx.bool(flagName);
|
|
42
|
+
}
|
|
40
43
|
|
|
41
44
|
// src/commands/te-experiment/bucket/list.ts
|
|
42
45
|
var bucketList = createExperimentCapabilityCommand({
|
|
@@ -481,7 +484,7 @@ var saveBuildGuide = createExperimentCapabilityCommand({
|
|
|
481
484
|
resource: "save",
|
|
482
485
|
command: "build-guide",
|
|
483
486
|
capabilityId: "experiment.save.build-guide",
|
|
484
|
-
description: "Build a read-only save guide for feature, traffic layer, experiment, or metric saves.",
|
|
487
|
+
description: "Build a read-only save guide for feature, traffic layer, experiment, or metric saves. WARNING: data.guide.example_args.req keys are recursively snake_cased for display; do not copy them into --req. Final save DTOs require camelCase (e.g. expName). Prefer capability inspect <final-save-id> input_schema.properties.req.",
|
|
485
488
|
flags: [
|
|
486
489
|
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
487
490
|
{
|
|
@@ -509,7 +512,7 @@ var saveValidate = createExperimentCapabilityCommand({
|
|
|
509
512
|
resource: "save",
|
|
510
513
|
command: "validate",
|
|
511
514
|
capabilityId: "experiment.save.validate",
|
|
512
|
-
description: "Dry-run validation for feature, traffic layer, experiment, or metric save requests.",
|
|
515
|
+
description: "Dry-run validation for feature, traffic layer, experiment, or metric save requests. WARNING: valid=true is not a final-save schema pass; snake_case req keys (e.g. exp_name) can still fail on experiment \u2026 save. Always pass camelCase --req. Do not copy example_args.req key casing from this response.",
|
|
513
516
|
flags: [
|
|
514
517
|
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
515
518
|
{
|
|
@@ -518,7 +521,12 @@ var saveValidate = createExperimentCapabilityCommand({
|
|
|
518
521
|
required: true,
|
|
519
522
|
desc: "Save operation mode: save_feature, save_traffic_layer, save_experiment, or save_metric."
|
|
520
523
|
},
|
|
521
|
-
{
|
|
524
|
+
{
|
|
525
|
+
name: "req",
|
|
526
|
+
type: "json",
|
|
527
|
+
required: true,
|
|
528
|
+
desc: "Candidate camelCase save request object (expName/metricId/\u2026). Never use snake_case DTO keys."
|
|
529
|
+
}
|
|
522
530
|
],
|
|
523
531
|
risk: "read",
|
|
524
532
|
validate: (ctx) => {
|
|
@@ -535,6 +543,98 @@ var saveValidate = createExperimentCapabilityCommand({
|
|
|
535
543
|
})
|
|
536
544
|
});
|
|
537
545
|
|
|
546
|
+
// src/commands/te-experiment/report/metric-trend.ts
|
|
547
|
+
var reportMetricTrend = createExperimentCapabilityCommand({
|
|
548
|
+
resource: "report",
|
|
549
|
+
command: "metric-trend",
|
|
550
|
+
capabilityId: "experiment.report.metric-trend",
|
|
551
|
+
description: "Query an experiment metric trend report for a date range.",
|
|
552
|
+
flags: [
|
|
553
|
+
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
554
|
+
{ name: "exp-id", type: "string", required: true, desc: "Experiment ID." },
|
|
555
|
+
{ name: "metric-id", type: "string", required: true, desc: "Metric ID." },
|
|
556
|
+
{ name: "start-time", type: "string", required: true, desc: "Start date in yyyy-MM-dd format." },
|
|
557
|
+
{ name: "end-time", type: "string", required: true, desc: "End date in yyyy-MM-dd format." },
|
|
558
|
+
{
|
|
559
|
+
name: "request-id",
|
|
560
|
+
type: "string",
|
|
561
|
+
required: false,
|
|
562
|
+
desc: "Optional caller-supplied cli_<32 lowercase hex> lifecycle ID. ae-cli generates and prints one before dispatch when omitted."
|
|
563
|
+
},
|
|
564
|
+
{ name: "force-refresh", type: "boolean", required: false, desc: "Force refresh report data." }
|
|
565
|
+
],
|
|
566
|
+
risk: "read",
|
|
567
|
+
buildInput: (ctx) => {
|
|
568
|
+
const input = {
|
|
569
|
+
project_id: ctx.num("project-id"),
|
|
570
|
+
exp_id: ctx.str("exp-id"),
|
|
571
|
+
metric_id: ctx.str("metric-id"),
|
|
572
|
+
start_time: ctx.str("start-time"),
|
|
573
|
+
end_time: ctx.str("end-time")
|
|
574
|
+
};
|
|
575
|
+
addOptionalString(input, "request_id", ctx.str("request-id"));
|
|
576
|
+
addOptionalBoolean(input, ctx, "force-refresh", "force_refresh");
|
|
577
|
+
return input;
|
|
578
|
+
}
|
|
579
|
+
});
|
|
580
|
+
|
|
581
|
+
// src/commands/te-experiment/report/sample-size.ts
|
|
582
|
+
var reportSampleSize = createExperimentCapabilityCommand({
|
|
583
|
+
resource: "report",
|
|
584
|
+
command: "sample-size",
|
|
585
|
+
capabilityId: "experiment.report.sample-size",
|
|
586
|
+
description: "Query an experiment sample-size report for a date range.",
|
|
587
|
+
flags: [
|
|
588
|
+
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
589
|
+
{ name: "exp-id", type: "string", required: true, desc: "Experiment ID." },
|
|
590
|
+
{ name: "start-time", type: "string", required: true, desc: "Start date in yyyy-MM-dd format." },
|
|
591
|
+
{ name: "end-time", type: "string", required: true, desc: "End date in yyyy-MM-dd format." },
|
|
592
|
+
{
|
|
593
|
+
name: "request-id",
|
|
594
|
+
type: "string",
|
|
595
|
+
required: false,
|
|
596
|
+
desc: "Optional caller-supplied cli_<32 lowercase hex> lifecycle ID. ae-cli generates and prints one before dispatch when omitted."
|
|
597
|
+
},
|
|
598
|
+
{ name: "force-refresh", type: "boolean", required: false, desc: "Force refresh report data." },
|
|
599
|
+
{ name: "by-hour", type: "boolean", required: false, desc: "Break results down by hour." }
|
|
600
|
+
],
|
|
601
|
+
risk: "read",
|
|
602
|
+
buildInput: (ctx) => {
|
|
603
|
+
const input = {
|
|
604
|
+
project_id: ctx.num("project-id"),
|
|
605
|
+
exp_id: ctx.str("exp-id"),
|
|
606
|
+
start_time: ctx.str("start-time"),
|
|
607
|
+
end_time: ctx.str("end-time")
|
|
608
|
+
};
|
|
609
|
+
addOptionalString(input, "request_id", ctx.str("request-id"));
|
|
610
|
+
addOptionalBoolean(input, ctx, "force-refresh", "force_refresh");
|
|
611
|
+
addOptionalBoolean(input, ctx, "by-hour", "by_hour");
|
|
612
|
+
return input;
|
|
613
|
+
}
|
|
614
|
+
});
|
|
615
|
+
|
|
616
|
+
// src/commands/te-experiment/report/summary.ts
|
|
617
|
+
var reportSummary = createExperimentCapabilityCommand({
|
|
618
|
+
resource: "report",
|
|
619
|
+
command: "summary",
|
|
620
|
+
capabilityId: "experiment.report.summary",
|
|
621
|
+
description: "Query an experiment report summary.",
|
|
622
|
+
flags: [
|
|
623
|
+
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
624
|
+
{ name: "exp-id", type: "string", required: true, desc: "Experiment ID." },
|
|
625
|
+
{ name: "force-refresh", type: "boolean", required: false, desc: "Force refresh report data." }
|
|
626
|
+
],
|
|
627
|
+
risk: "read",
|
|
628
|
+
buildInput: (ctx) => {
|
|
629
|
+
const input = {
|
|
630
|
+
project_id: ctx.num("project-id"),
|
|
631
|
+
exp_id: ctx.str("exp-id")
|
|
632
|
+
};
|
|
633
|
+
addOptionalBoolean(input, ctx, "force-refresh", "force_refresh");
|
|
634
|
+
return input;
|
|
635
|
+
}
|
|
636
|
+
});
|
|
637
|
+
|
|
538
638
|
// src/commands/te-experiment/traffic-layer/batch-delete.ts
|
|
539
639
|
var trafficLayerBatchDelete = createExperimentCapabilityCommand({
|
|
540
640
|
resource: "traffic-layer",
|
|
@@ -616,6 +716,9 @@ var commands = [
|
|
|
616
716
|
trafficLayerGet,
|
|
617
717
|
trafficLayerList,
|
|
618
718
|
trafficLayerBatchDelete,
|
|
719
|
+
reportSummary,
|
|
720
|
+
reportSampleSize,
|
|
721
|
+
reportMetricTrend,
|
|
619
722
|
metricSave,
|
|
620
723
|
metricGet,
|
|
621
724
|
metricList,
|
|
@@ -654,6 +757,9 @@ export {
|
|
|
654
757
|
metricList,
|
|
655
758
|
metricSave,
|
|
656
759
|
operationLogQuery,
|
|
760
|
+
reportMetricTrend,
|
|
761
|
+
reportSampleSize,
|
|
762
|
+
reportSummary,
|
|
657
763
|
saveBuildGuide,
|
|
658
764
|
saveValidate,
|
|
659
765
|
trafficLayerBatchDelete,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createCapabilityCommand
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-QATA32VR.js";
|
|
4
4
|
import {
|
|
5
5
|
registerCapabilityGatewayRoute
|
|
6
6
|
} from "./chunk-PTE56QPL.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-WZRX4KOH.js";
|
|
8
|
+
import "./chunk-JUW4AJXN.js";
|
|
9
|
+
import "./chunk-S5NTSDBS.js";
|
|
10
|
+
import "./chunk-ZQKDZXDO.js";
|
|
11
|
+
import "./chunk-3FY3RJ26.js";
|
|
12
12
|
import "./chunk-AXDXJTPC.js";
|
|
13
13
|
import "./chunk-JHENBQ5B.js";
|
|
14
14
|
|
|
@@ -37,6 +37,9 @@ function readRequiredStringArray(ctx, name) {
|
|
|
37
37
|
function addOptionalString(input, name, value) {
|
|
38
38
|
if (value !== "") input[name] = value;
|
|
39
39
|
}
|
|
40
|
+
function addOptionalBoolean(input, ctx, flagName, fieldName) {
|
|
41
|
+
if (ctx.str(flagName) !== "") input[fieldName] = ctx.bool(flagName);
|
|
42
|
+
}
|
|
40
43
|
|
|
41
44
|
// src/commands/te-experiment/bucket/list.ts
|
|
42
45
|
var bucketList = createExperimentCapabilityCommand({
|
|
@@ -481,7 +484,7 @@ var saveBuildGuide = createExperimentCapabilityCommand({
|
|
|
481
484
|
resource: "save",
|
|
482
485
|
command: "build-guide",
|
|
483
486
|
capabilityId: "experiment.save.build-guide",
|
|
484
|
-
description: "Build a read-only save guide for feature, traffic layer, experiment, or metric saves.",
|
|
487
|
+
description: "Build a read-only save guide for feature, traffic layer, experiment, or metric saves. WARNING: data.guide.example_args.req keys are recursively snake_cased for display; do not copy them into --req. Final save DTOs require camelCase (e.g. expName). Prefer capability inspect <final-save-id> input_schema.properties.req.",
|
|
485
488
|
flags: [
|
|
486
489
|
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
487
490
|
{
|
|
@@ -509,7 +512,7 @@ var saveValidate = createExperimentCapabilityCommand({
|
|
|
509
512
|
resource: "save",
|
|
510
513
|
command: "validate",
|
|
511
514
|
capabilityId: "experiment.save.validate",
|
|
512
|
-
description: "Dry-run validation for feature, traffic layer, experiment, or metric save requests.",
|
|
515
|
+
description: "Dry-run validation for feature, traffic layer, experiment, or metric save requests. WARNING: valid=true is not a final-save schema pass; snake_case req keys (e.g. exp_name) can still fail on experiment \u2026 save. Always pass camelCase --req. Do not copy example_args.req key casing from this response.",
|
|
513
516
|
flags: [
|
|
514
517
|
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
515
518
|
{
|
|
@@ -518,7 +521,12 @@ var saveValidate = createExperimentCapabilityCommand({
|
|
|
518
521
|
required: true,
|
|
519
522
|
desc: "Save operation mode: save_feature, save_traffic_layer, save_experiment, or save_metric."
|
|
520
523
|
},
|
|
521
|
-
{
|
|
524
|
+
{
|
|
525
|
+
name: "req",
|
|
526
|
+
type: "json",
|
|
527
|
+
required: true,
|
|
528
|
+
desc: "Candidate camelCase save request object (expName/metricId/\u2026). Never use snake_case DTO keys."
|
|
529
|
+
}
|
|
522
530
|
],
|
|
523
531
|
risk: "read",
|
|
524
532
|
validate: (ctx) => {
|
|
@@ -535,6 +543,98 @@ var saveValidate = createExperimentCapabilityCommand({
|
|
|
535
543
|
})
|
|
536
544
|
});
|
|
537
545
|
|
|
546
|
+
// src/commands/te-experiment/report/metric-trend.ts
|
|
547
|
+
var reportMetricTrend = createExperimentCapabilityCommand({
|
|
548
|
+
resource: "report",
|
|
549
|
+
command: "metric-trend",
|
|
550
|
+
capabilityId: "experiment.report.metric-trend",
|
|
551
|
+
description: "Query an experiment metric trend report for a date range.",
|
|
552
|
+
flags: [
|
|
553
|
+
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
554
|
+
{ name: "exp-id", type: "string", required: true, desc: "Experiment ID." },
|
|
555
|
+
{ name: "metric-id", type: "string", required: true, desc: "Metric ID." },
|
|
556
|
+
{ name: "start-time", type: "string", required: true, desc: "Start date in yyyy-MM-dd format." },
|
|
557
|
+
{ name: "end-time", type: "string", required: true, desc: "End date in yyyy-MM-dd format." },
|
|
558
|
+
{
|
|
559
|
+
name: "request-id",
|
|
560
|
+
type: "string",
|
|
561
|
+
required: false,
|
|
562
|
+
desc: "Optional caller-supplied cli_<32 lowercase hex> lifecycle ID. ae-cli generates and prints one before dispatch when omitted."
|
|
563
|
+
},
|
|
564
|
+
{ name: "force-refresh", type: "boolean", required: false, desc: "Force refresh report data." }
|
|
565
|
+
],
|
|
566
|
+
risk: "read",
|
|
567
|
+
buildInput: (ctx) => {
|
|
568
|
+
const input = {
|
|
569
|
+
project_id: ctx.num("project-id"),
|
|
570
|
+
exp_id: ctx.str("exp-id"),
|
|
571
|
+
metric_id: ctx.str("metric-id"),
|
|
572
|
+
start_time: ctx.str("start-time"),
|
|
573
|
+
end_time: ctx.str("end-time")
|
|
574
|
+
};
|
|
575
|
+
addOptionalString(input, "request_id", ctx.str("request-id"));
|
|
576
|
+
addOptionalBoolean(input, ctx, "force-refresh", "force_refresh");
|
|
577
|
+
return input;
|
|
578
|
+
}
|
|
579
|
+
});
|
|
580
|
+
|
|
581
|
+
// src/commands/te-experiment/report/sample-size.ts
|
|
582
|
+
var reportSampleSize = createExperimentCapabilityCommand({
|
|
583
|
+
resource: "report",
|
|
584
|
+
command: "sample-size",
|
|
585
|
+
capabilityId: "experiment.report.sample-size",
|
|
586
|
+
description: "Query an experiment sample-size report for a date range.",
|
|
587
|
+
flags: [
|
|
588
|
+
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
589
|
+
{ name: "exp-id", type: "string", required: true, desc: "Experiment ID." },
|
|
590
|
+
{ name: "start-time", type: "string", required: true, desc: "Start date in yyyy-MM-dd format." },
|
|
591
|
+
{ name: "end-time", type: "string", required: true, desc: "End date in yyyy-MM-dd format." },
|
|
592
|
+
{
|
|
593
|
+
name: "request-id",
|
|
594
|
+
type: "string",
|
|
595
|
+
required: false,
|
|
596
|
+
desc: "Optional caller-supplied cli_<32 lowercase hex> lifecycle ID. ae-cli generates and prints one before dispatch when omitted."
|
|
597
|
+
},
|
|
598
|
+
{ name: "force-refresh", type: "boolean", required: false, desc: "Force refresh report data." },
|
|
599
|
+
{ name: "by-hour", type: "boolean", required: false, desc: "Break results down by hour." }
|
|
600
|
+
],
|
|
601
|
+
risk: "read",
|
|
602
|
+
buildInput: (ctx) => {
|
|
603
|
+
const input = {
|
|
604
|
+
project_id: ctx.num("project-id"),
|
|
605
|
+
exp_id: ctx.str("exp-id"),
|
|
606
|
+
start_time: ctx.str("start-time"),
|
|
607
|
+
end_time: ctx.str("end-time")
|
|
608
|
+
};
|
|
609
|
+
addOptionalString(input, "request_id", ctx.str("request-id"));
|
|
610
|
+
addOptionalBoolean(input, ctx, "force-refresh", "force_refresh");
|
|
611
|
+
addOptionalBoolean(input, ctx, "by-hour", "by_hour");
|
|
612
|
+
return input;
|
|
613
|
+
}
|
|
614
|
+
});
|
|
615
|
+
|
|
616
|
+
// src/commands/te-experiment/report/summary.ts
|
|
617
|
+
var reportSummary = createExperimentCapabilityCommand({
|
|
618
|
+
resource: "report",
|
|
619
|
+
command: "summary",
|
|
620
|
+
capabilityId: "experiment.report.summary",
|
|
621
|
+
description: "Query an experiment report summary.",
|
|
622
|
+
flags: [
|
|
623
|
+
{ name: "project-id", type: "number", required: true, alias: "p", desc: "Numeric project ID." },
|
|
624
|
+
{ name: "exp-id", type: "string", required: true, desc: "Experiment ID." },
|
|
625
|
+
{ name: "force-refresh", type: "boolean", required: false, desc: "Force refresh report data." }
|
|
626
|
+
],
|
|
627
|
+
risk: "read",
|
|
628
|
+
buildInput: (ctx) => {
|
|
629
|
+
const input = {
|
|
630
|
+
project_id: ctx.num("project-id"),
|
|
631
|
+
exp_id: ctx.str("exp-id")
|
|
632
|
+
};
|
|
633
|
+
addOptionalBoolean(input, ctx, "force-refresh", "force_refresh");
|
|
634
|
+
return input;
|
|
635
|
+
}
|
|
636
|
+
});
|
|
637
|
+
|
|
538
638
|
// src/commands/te-experiment/traffic-layer/batch-delete.ts
|
|
539
639
|
var trafficLayerBatchDelete = createExperimentCapabilityCommand({
|
|
540
640
|
resource: "traffic-layer",
|
|
@@ -616,6 +716,9 @@ var commands = [
|
|
|
616
716
|
trafficLayerGet,
|
|
617
717
|
trafficLayerList,
|
|
618
718
|
trafficLayerBatchDelete,
|
|
719
|
+
reportSummary,
|
|
720
|
+
reportSampleSize,
|
|
721
|
+
reportMetricTrend,
|
|
619
722
|
metricSave,
|
|
620
723
|
metricGet,
|
|
621
724
|
metricList,
|
|
@@ -654,6 +757,9 @@ export {
|
|
|
654
757
|
metricList,
|
|
655
758
|
metricSave,
|
|
656
759
|
operationLogQuery,
|
|
760
|
+
reportMetricTrend,
|
|
761
|
+
reportSampleSize,
|
|
762
|
+
reportSummary,
|
|
657
763
|
saveBuildGuide,
|
|
658
764
|
saveValidate,
|
|
659
765
|
trafficLayerBatchDelete,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
kbApi,
|
|
3
3
|
kbUpload
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-AFXA7BRK.js";
|
|
5
|
+
import "./chunk-S5NTSDBS.js";
|
|
6
|
+
import "./chunk-ZQKDZXDO.js";
|
|
7
|
+
import "./chunk-3FY3RJ26.js";
|
|
8
8
|
import "./chunk-AXDXJTPC.js";
|
|
9
9
|
import "./chunk-JHENBQ5B.js";
|
|
10
10
|
|