@koda-sl/baker-cli 0.353.0-dev.afbf521d7 → 0.353.0-dev.f5f2d3146
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 +4 -5
- package/dist/{chunk-RZWMHH4X.js → chunk-B7MLH3K6.js} +109 -190
- package/dist/chunk-B7MLH3K6.js.map +1 -0
- package/dist/cli.js +23 -5
- package/dist/cli.js.map +1 -1
- package/dist/engine/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-RZWMHH4X.js.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -54,7 +54,6 @@ import {
|
|
|
54
54
|
promptMaxLength,
|
|
55
55
|
requireCredentialsFromEnv,
|
|
56
56
|
resolveConcurrency,
|
|
57
|
-
runFailureCode,
|
|
58
57
|
runYtDlp,
|
|
59
58
|
sha256Hex,
|
|
60
59
|
spineInputFlags,
|
|
@@ -69,7 +68,7 @@ import {
|
|
|
69
68
|
validateCanvasDeep,
|
|
70
69
|
withoutCastName,
|
|
71
70
|
ytDlpBlockSignal
|
|
72
|
-
} from "./chunk-
|
|
71
|
+
} from "./chunk-B7MLH3K6.js";
|
|
73
72
|
import {
|
|
74
73
|
csvOrJson,
|
|
75
74
|
daysAgoIso,
|
|
@@ -9185,6 +9184,13 @@ var FIELD_DESCRIPTIONS = {
|
|
|
9185
9184
|
"ad_group.name": "Ad group display name",
|
|
9186
9185
|
"ad_group.status": "ENABLED, PAUSED, or REMOVED",
|
|
9187
9186
|
"ad_group.type": "Ad group type (SEARCH_STANDARD, DISPLAY_STANDARD, etc.)",
|
|
9187
|
+
"ad_group.target_roas": "This ad group's own target ROAS (ratio), overriding its campaign's and portfolio's; 0 or omitted = none",
|
|
9188
|
+
"ad_group.effective_target_roas": "The target ROAS this ad group actually bids to, from whichever level sets it",
|
|
9189
|
+
"ad_group.effective_target_roas_source": "Which level the effective target ROAS comes from: AD_GROUP (its own \u2014 a campaign or portfolio change does not reach it) or CAMPAIGN_BIDDING_STRATEGY (the campaign's strategy, its own or a portfolio)",
|
|
9190
|
+
"ad_group.target_cpa_micros": "This ad group's own target CPA in micros, overriding its campaign's and portfolio's; 0 or omitted = none",
|
|
9191
|
+
"ad_group.effective_target_cpa_micros": "The target CPA (micros) this ad group actually bids to",
|
|
9192
|
+
"ad_group.effective_target_cpa_source": "Which level the effective target CPA comes from: AD_GROUP (its own \u2014 a campaign or portfolio change does not reach it) or CAMPAIGN_BIDDING_STRATEGY (the campaign's strategy, its own or a portfolio)",
|
|
9193
|
+
"campaign.bidding_strategy": "Resource name of the portfolio bidding strategy the campaign uses; blank = its own strategy",
|
|
9188
9194
|
// Ad group ad
|
|
9189
9195
|
"ad_group_ad.ad.id": "Unique ad identifier",
|
|
9190
9196
|
"ad_group_ad.ad.final_urls": "Landing page URLs (array)",
|
|
@@ -12038,6 +12044,18 @@ var PRESETS = [
|
|
|
12038
12044
|
defaultLimit: 200,
|
|
12039
12045
|
statusFields: ["campaign.status"]
|
|
12040
12046
|
},
|
|
12047
|
+
{
|
|
12048
|
+
// A target resolves ad group > campaign > portfolio strategy, so the campaign's or the portfolio's
|
|
12049
|
+
// number is not necessarily the one bidding. `effective_target_*_source` names the level that is;
|
|
12050
|
+
// a change staged anywhere else is inert for that ad group. Undated on purpose: an ad group that
|
|
12051
|
+
// spent nothing in the window still carries its own target, and a dated read would drop its row.
|
|
12052
|
+
name: "bid-targets",
|
|
12053
|
+
description: "Which target each ad group actually bids to \u2014 its own target ROAS / CPA, the effective one and the level it comes from. Read it before changing any target: a campaign or portfolio change does not reach an ad group whose source is AD_GROUP",
|
|
12054
|
+
gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign.bidding_strategy_type, campaign.bidding_strategy, ad_group.id, ad_group.name, ad_group.status, ad_group.target_roas, ad_group.effective_target_roas, ad_group.effective_target_roas_source, ad_group.target_cpa_micros, ad_group.effective_target_cpa_micros, ad_group.effective_target_cpa_source FROM ad_group WHERE campaign.bidding_strategy_type IN ('TARGET_ROAS', 'TARGET_CPA', 'MAXIMIZE_CONVERSION_VALUE', 'MAXIMIZE_CONVERSIONS'){statusScope} ORDER BY campaign.name LIMIT {limit}`,
|
|
12055
|
+
defaultDateRange: "ALL_TIME",
|
|
12056
|
+
defaultLimit: 200,
|
|
12057
|
+
statusFields: ["campaign.status", "ad_group.status"]
|
|
12058
|
+
},
|
|
12041
12059
|
{
|
|
12042
12060
|
name: "conversions-by-action",
|
|
12043
12061
|
description: "Which conversion action each campaign's conversions actually are \u2014 the read that says whether two campaigns' conversion rates are measuring the same event",
|
|
@@ -41173,14 +41191,14 @@ ${describeRewrites(healed.rewrites)}
|
|
|
41173
41191
|
const failures = e.failures.map((f) => ({ node_id: f.nodeId, message: describeFailureReason(f.reason) }));
|
|
41174
41192
|
if (poster) await poster.flush(failedPayload(e.message));
|
|
41175
41193
|
process.stderr.write(
|
|
41176
|
-
`${JSON.stringify({ ok: false, error: { code:
|
|
41194
|
+
`${JSON.stringify({ ok: false, error: { code: "runtime", message: e.message, failures } }, null, 2)}
|
|
41177
41195
|
`
|
|
41178
41196
|
);
|
|
41179
41197
|
process.exit(1);
|
|
41180
41198
|
}
|
|
41181
41199
|
const msg = e instanceof Error ? e.message : String(e);
|
|
41182
41200
|
if (poster) await poster.flush(failedPayload(msg));
|
|
41183
|
-
process.stderr.write(`${JSON.stringify({ ok: false, error: { code:
|
|
41201
|
+
process.stderr.write(`${JSON.stringify({ ok: false, error: { code: "runtime", message: msg } }, null, 2)}
|
|
41184
41202
|
`);
|
|
41185
41203
|
process.exit(1);
|
|
41186
41204
|
}
|
|
@@ -44448,7 +44466,7 @@ import { defineCommand as defineCommand118 } from "citty";
|
|
|
44448
44466
|
var validateCommand = defineCommand118({
|
|
44449
44467
|
meta: {
|
|
44450
44468
|
name: "validate",
|
|
44451
|
-
description: "Validate a canvas JSON file (no execution). Includes a per-node cost preview and runs each node's deep validators (composition meta checks for hyperframe_render/_snapshot)
|
|
44469
|
+
description: "Validate a canvas JSON file (no execution). Includes a per-node cost preview and runs each node's deep validators (composition meta checks for hyperframe_render/_snapshot)."
|
|
44452
44470
|
},
|
|
44453
44471
|
args: { file: { type: "positional", required: true, description: "Path to canvas JSON" } },
|
|
44454
44472
|
async run({ args: args5 }) {
|