@koda-sl/baker-cli 0.448.0 → 0.449.0-dev.bd86e5817

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/README.md +4 -0
  2. package/dist/{account-F6MHQ64I.js → account-4H7QVBRK.js} +3 -3
  3. package/dist/{account-writes-ISE4U2FQ.js → account-writes-AK42HGRM.js} +3 -3
  4. package/dist/{ad-group-writes-UU5NNKSO.js → ad-group-writes-QQS4223F.js} +3 -3
  5. package/dist/{ad-groups-CGFXZNIA.js → ad-groups-WGPDPUI2.js} +7 -7
  6. package/dist/{ad-writes-NALDYWOR.js → ad-writes-XE2IE4DS.js} +3 -3
  7. package/dist/{ads-C47NA2HH.js → ads-73PGA4YC.js} +2 -2
  8. package/dist/{ads-PV7GZXPR.js → ads-BCOSQALY.js} +8 -8
  9. package/dist/{animate-FWWHSYPL.js → animate-AIZ3GS4J.js} +4 -4
  10. package/dist/{audiences-VEKGLWBG.js → audiences-TGD5US2M.js} +3 -3
  11. package/dist/{brief-UO52ZHFI.js → brief-YFJHQ5VQ.js} +5 -5
  12. package/dist/{campaign-writes-SX52CJYW.js → campaign-writes-SXLZFYF6.js} +3 -3
  13. package/dist/{campaigns-X3DPCCSN.js → campaigns-YS3OGQXO.js} +7 -7
  14. package/dist/{canvas-KTALW6HY.js → canvas-UJNSHD3B.js} +13 -13
  15. package/dist/{catalog-Y3XADCSY.js → catalog-ZQX6BGXS.js} +6 -6
  16. package/dist/{catalogs-G3YEVG6S.js → catalogs-BRXEDE56.js} +3 -3
  17. package/dist/{chatgpt-QNUN63YS.js → chatgpt-7W75X3ER.js} +13 -13
  18. package/dist/{chunk-J4LSFZCF.js → chunk-4SG4RW2P.js} +6 -6
  19. package/dist/{chunk-W4VS475D.js → chunk-6N6WKAJM.js} +2 -2
  20. package/dist/{chunk-35XWJEWH.js → chunk-7J6EHOH6.js} +2 -2
  21. package/dist/{chunk-BY6M3TE5.js → chunk-B5SCU7MJ.js} +19 -13
  22. package/dist/{chunk-BY6M3TE5.js.map → chunk-B5SCU7MJ.js.map} +1 -1
  23. package/dist/{chunk-CHSNHVYF.js → chunk-CAMX6OHF.js} +4 -4
  24. package/dist/chunk-CAMX6OHF.js.map +1 -0
  25. package/dist/{chunk-OJ5R2OFK.js → chunk-CJCVIEJ5.js} +3 -3
  26. package/dist/{chunk-Y5YBNAIS.js → chunk-CXWFX2AM.js} +6 -6
  27. package/dist/{chunk-HBTF25YG.js → chunk-DGUNI37S.js} +2 -2
  28. package/dist/{chunk-BAVBLIAD.js → chunk-EAP4O4FE.js} +4 -4
  29. package/dist/{chunk-KLBTXETO.js → chunk-FTWJFDIN.js} +169 -169
  30. package/dist/chunk-FTWJFDIN.js.map +1 -0
  31. package/dist/{chunk-5QGMMZFQ.js → chunk-GKZ2WU75.js} +17 -6
  32. package/dist/chunk-GKZ2WU75.js.map +1 -0
  33. package/dist/{chunk-KQTYTCKQ.js → chunk-HZUDRKGR.js} +2 -2
  34. package/dist/{chunk-4D7UBVSG.js → chunk-M242LHLX.js} +2 -2
  35. package/dist/{chunk-Y6QAJNKP.js → chunk-NCWCZY5P.js} +50 -20
  36. package/dist/chunk-NCWCZY5P.js.map +1 -0
  37. package/dist/{chunk-7ZHMGXE2.js → chunk-NJXNU2G6.js} +3 -3
  38. package/dist/{chunk-HQSCJYZO.js → chunk-P5T7OZKV.js} +2 -2
  39. package/dist/{chunk-VB6WJJR3.js → chunk-PZXCWSKV.js} +2 -2
  40. package/dist/{chunk-JWI6GIFJ.js → chunk-QD7ESRLN.js} +2 -2
  41. package/dist/{chunk-Q43MLYXE.js → chunk-T2PC5AVH.js} +5 -5
  42. package/dist/chunk-T2PC5AVH.js.map +1 -0
  43. package/dist/{chunk-LYBXCXJB.js → chunk-VNUNE5AB.js} +2 -2
  44. package/dist/{chunk-UQ4QIV56.js → chunk-VTDMKARH.js} +3 -3
  45. package/dist/{chunk-PN4WWIHS.js → chunk-WNRV4QH7.js} +5 -5
  46. package/dist/{chunk-ULJ5RFOV.js → chunk-XFGAUP5B.js} +2 -2
  47. package/dist/{chunk-TD2CL5FE.js → chunk-YK32GUBN.js} +4 -4
  48. package/dist/cli.js +7 -7
  49. package/dist/{conversion-report-N4HANYOB.js → conversion-report-XQBJ6LG4.js} +2 -2
  50. package/dist/{conversion-writes-LW4HQKK5.js → conversion-writes-UBCVXP2E.js} +3 -3
  51. package/dist/{conversions-TS723AZV.js → conversions-D236RTUK.js} +5 -5
  52. package/dist/{creatives-AG6FCCHY.js → creatives-NJF2U763.js} +7 -7
  53. package/dist/{credentials-VOZTILFO.js → credentials-C33K6XCJ.js} +14 -14
  54. package/dist/credentials-C33K6XCJ.js.map +1 -0
  55. package/dist/{critique-D74VSOGJ.js → critique-YDKPYZLD.js} +6 -6
  56. package/dist/{customers-4AWBFDUF.js → customers-A36LOZOB.js} +3 -3
  57. package/dist/{draft-THPZFASM.js → draft-MNFJ4G3C.js} +3 -3
  58. package/dist/engine/index.js +5 -5
  59. package/dist/{feedback-FFF3KELE.js → feedback-PPQMOQ46.js} +2 -2
  60. package/dist/{feedback-record-DTCSUXRO.js → feedback-record-V66HWVRR.js} +8 -8
  61. package/dist/{fit-PXZSHQRM.js → fit-UOFYFJ4Q.js} +5 -5
  62. package/dist/{generate-MMBYB44G.js → generate-3XYYITU6.js} +3 -3
  63. package/dist/{history-DBIEYQHY.js → history-Q3QCT64S.js} +3 -3
  64. package/dist/{insights-ZIU6FJMS.js → insights-LNAXV2CG.js} +2 -2
  65. package/dist/{learn-3VO6DXUX.js → learn-FUQSY7DN.js} +4 -4
  66. package/dist/{locations-74TPQWAT.js → locations-2NKBJKBT.js} +2 -2
  67. package/dist/{make-NHZAHTV4.js → make-J3WBO62B.js} +13 -13
  68. package/dist/{models-7U3GRYHF.js → models-3Z6MDHQW.js} +2 -2
  69. package/dist/{pixels-45A55MOP.js → pixels-TZPF746S.js} +3 -3
  70. package/dist/{rerun-NTDXIB4E.js → rerun-WYDRHIUJ.js} +14 -14
  71. package/dist/{research-EY7C7JJY.js → research-2BLEISBG.js} +2 -2
  72. package/dist/{run-MZ7JLI75.js → run-MODGUNGT.js} +14 -14
  73. package/dist/{scaffold-ad-M5CWSLZ4.js → scaffold-ad-5ZE7KE62.js} +12 -12
  74. package/dist/{scaffold-static-ad-QW3JWMXA.js → scaffold-static-ad-HJY5HFDL.js} +21 -21
  75. package/dist/scaffold-static-ad-HJY5HFDL.js.map +1 -0
  76. package/dist/{scaffold-video-EVRMU6WP.js → scaffold-video-P2PYPWG2.js} +11 -11
  77. package/dist/{select-VYPVEO5J.js → select-AB2L4GAA.js} +8 -8
  78. package/dist/{set-prompt-VH3S47Z7.js → set-prompt-DU2G2WTB.js} +7 -7
  79. package/dist/{stale-LTRROC3C.js → stale-6MJHVEG4.js} +7 -7
  80. package/dist/{studio-C5K3YX3P.js → studio-RA7QQH4O.js} +4 -4
  81. package/dist/{sync-definition-TQDIRIR5.js → sync-definition-IPUFS5XS.js} +10 -10
  82. package/dist/{translate-IHRONQW3.js → translate-Z66FDB4K.js} +11 -11
  83. package/dist/{validate-5MDFJ76K.js → validate-UMHHNTVU.js} +8 -8
  84. package/dist/{viewer-check-45T2HLAH.js → viewer-check-L4B4LIAX.js} +4 -4
  85. package/dist/{winning-ads-BXRQ7SBY.js → winning-ads-2WS7FI4E.js} +2 -2
  86. package/package.json +1 -1
  87. package/dist/chunk-5QGMMZFQ.js.map +0 -1
  88. package/dist/chunk-CHSNHVYF.js.map +0 -1
  89. package/dist/chunk-KLBTXETO.js.map +0 -1
  90. package/dist/chunk-Q43MLYXE.js.map +0 -1
  91. package/dist/chunk-Y6QAJNKP.js.map +0 -1
  92. package/dist/credentials-VOZTILFO.js.map +0 -1
  93. package/dist/scaffold-static-ad-QW3JWMXA.js.map +0 -1
  94. /package/dist/{account-F6MHQ64I.js.map → account-4H7QVBRK.js.map} +0 -0
  95. /package/dist/{account-writes-ISE4U2FQ.js.map → account-writes-AK42HGRM.js.map} +0 -0
  96. /package/dist/{ad-group-writes-UU5NNKSO.js.map → ad-group-writes-QQS4223F.js.map} +0 -0
  97. /package/dist/{ad-groups-CGFXZNIA.js.map → ad-groups-WGPDPUI2.js.map} +0 -0
  98. /package/dist/{ad-writes-NALDYWOR.js.map → ad-writes-XE2IE4DS.js.map} +0 -0
  99. /package/dist/{ads-C47NA2HH.js.map → ads-73PGA4YC.js.map} +0 -0
  100. /package/dist/{ads-PV7GZXPR.js.map → ads-BCOSQALY.js.map} +0 -0
  101. /package/dist/{animate-FWWHSYPL.js.map → animate-AIZ3GS4J.js.map} +0 -0
  102. /package/dist/{audiences-VEKGLWBG.js.map → audiences-TGD5US2M.js.map} +0 -0
  103. /package/dist/{brief-UO52ZHFI.js.map → brief-YFJHQ5VQ.js.map} +0 -0
  104. /package/dist/{campaign-writes-SX52CJYW.js.map → campaign-writes-SXLZFYF6.js.map} +0 -0
  105. /package/dist/{campaigns-X3DPCCSN.js.map → campaigns-YS3OGQXO.js.map} +0 -0
  106. /package/dist/{canvas-KTALW6HY.js.map → canvas-UJNSHD3B.js.map} +0 -0
  107. /package/dist/{catalog-Y3XADCSY.js.map → catalog-ZQX6BGXS.js.map} +0 -0
  108. /package/dist/{catalogs-G3YEVG6S.js.map → catalogs-BRXEDE56.js.map} +0 -0
  109. /package/dist/{chatgpt-QNUN63YS.js.map → chatgpt-7W75X3ER.js.map} +0 -0
  110. /package/dist/{chunk-J4LSFZCF.js.map → chunk-4SG4RW2P.js.map} +0 -0
  111. /package/dist/{chunk-W4VS475D.js.map → chunk-6N6WKAJM.js.map} +0 -0
  112. /package/dist/{chunk-35XWJEWH.js.map → chunk-7J6EHOH6.js.map} +0 -0
  113. /package/dist/{chunk-OJ5R2OFK.js.map → chunk-CJCVIEJ5.js.map} +0 -0
  114. /package/dist/{chunk-Y5YBNAIS.js.map → chunk-CXWFX2AM.js.map} +0 -0
  115. /package/dist/{chunk-HBTF25YG.js.map → chunk-DGUNI37S.js.map} +0 -0
  116. /package/dist/{chunk-BAVBLIAD.js.map → chunk-EAP4O4FE.js.map} +0 -0
  117. /package/dist/{chunk-KQTYTCKQ.js.map → chunk-HZUDRKGR.js.map} +0 -0
  118. /package/dist/{chunk-4D7UBVSG.js.map → chunk-M242LHLX.js.map} +0 -0
  119. /package/dist/{chunk-7ZHMGXE2.js.map → chunk-NJXNU2G6.js.map} +0 -0
  120. /package/dist/{chunk-HQSCJYZO.js.map → chunk-P5T7OZKV.js.map} +0 -0
  121. /package/dist/{chunk-VB6WJJR3.js.map → chunk-PZXCWSKV.js.map} +0 -0
  122. /package/dist/{chunk-JWI6GIFJ.js.map → chunk-QD7ESRLN.js.map} +0 -0
  123. /package/dist/{chunk-LYBXCXJB.js.map → chunk-VNUNE5AB.js.map} +0 -0
  124. /package/dist/{chunk-UQ4QIV56.js.map → chunk-VTDMKARH.js.map} +0 -0
  125. /package/dist/{chunk-PN4WWIHS.js.map → chunk-WNRV4QH7.js.map} +0 -0
  126. /package/dist/{chunk-ULJ5RFOV.js.map → chunk-XFGAUP5B.js.map} +0 -0
  127. /package/dist/{chunk-TD2CL5FE.js.map → chunk-YK32GUBN.js.map} +0 -0
  128. /package/dist/{conversion-report-N4HANYOB.js.map → conversion-report-XQBJ6LG4.js.map} +0 -0
  129. /package/dist/{conversion-writes-LW4HQKK5.js.map → conversion-writes-UBCVXP2E.js.map} +0 -0
  130. /package/dist/{conversions-TS723AZV.js.map → conversions-D236RTUK.js.map} +0 -0
  131. /package/dist/{creatives-AG6FCCHY.js.map → creatives-NJF2U763.js.map} +0 -0
  132. /package/dist/{critique-D74VSOGJ.js.map → critique-YDKPYZLD.js.map} +0 -0
  133. /package/dist/{customers-4AWBFDUF.js.map → customers-A36LOZOB.js.map} +0 -0
  134. /package/dist/{draft-THPZFASM.js.map → draft-MNFJ4G3C.js.map} +0 -0
  135. /package/dist/{feedback-FFF3KELE.js.map → feedback-PPQMOQ46.js.map} +0 -0
  136. /package/dist/{feedback-record-DTCSUXRO.js.map → feedback-record-V66HWVRR.js.map} +0 -0
  137. /package/dist/{fit-PXZSHQRM.js.map → fit-UOFYFJ4Q.js.map} +0 -0
  138. /package/dist/{generate-MMBYB44G.js.map → generate-3XYYITU6.js.map} +0 -0
  139. /package/dist/{history-DBIEYQHY.js.map → history-Q3QCT64S.js.map} +0 -0
  140. /package/dist/{insights-ZIU6FJMS.js.map → insights-LNAXV2CG.js.map} +0 -0
  141. /package/dist/{learn-3VO6DXUX.js.map → learn-FUQSY7DN.js.map} +0 -0
  142. /package/dist/{locations-74TPQWAT.js.map → locations-2NKBJKBT.js.map} +0 -0
  143. /package/dist/{make-NHZAHTV4.js.map → make-J3WBO62B.js.map} +0 -0
  144. /package/dist/{models-7U3GRYHF.js.map → models-3Z6MDHQW.js.map} +0 -0
  145. /package/dist/{pixels-45A55MOP.js.map → pixels-TZPF746S.js.map} +0 -0
  146. /package/dist/{rerun-NTDXIB4E.js.map → rerun-WYDRHIUJ.js.map} +0 -0
  147. /package/dist/{research-EY7C7JJY.js.map → research-2BLEISBG.js.map} +0 -0
  148. /package/dist/{run-MZ7JLI75.js.map → run-MODGUNGT.js.map} +0 -0
  149. /package/dist/{scaffold-ad-M5CWSLZ4.js.map → scaffold-ad-5ZE7KE62.js.map} +0 -0
  150. /package/dist/{scaffold-video-EVRMU6WP.js.map → scaffold-video-P2PYPWG2.js.map} +0 -0
  151. /package/dist/{select-VYPVEO5J.js.map → select-AB2L4GAA.js.map} +0 -0
  152. /package/dist/{set-prompt-VH3S47Z7.js.map → set-prompt-DU2G2WTB.js.map} +0 -0
  153. /package/dist/{stale-LTRROC3C.js.map → stale-6MJHVEG4.js.map} +0 -0
  154. /package/dist/{studio-C5K3YX3P.js.map → studio-RA7QQH4O.js.map} +0 -0
  155. /package/dist/{sync-definition-TQDIRIR5.js.map → sync-definition-IPUFS5XS.js.map} +0 -0
  156. /package/dist/{translate-IHRONQW3.js.map → translate-Z66FDB4K.js.map} +0 -0
  157. /package/dist/{validate-5MDFJ76K.js.map → validate-UMHHNTVU.js.map} +0 -0
  158. /package/dist/{viewer-check-45T2HLAH.js.map → viewer-check-L4B4LIAX.js.map} +0 -0
  159. /package/dist/{winning-ads-BXRQ7SBY.js.map → winning-ads-2WS7FI4E.js.map} +0 -0
package/README.md CHANGED
@@ -4309,10 +4309,14 @@ A skill fills only what you did **not** pin — `--model`, `--aspect-ratio` and
4309
4309
 
4310
4310
  ## Creative Canvas
4311
4311
 
4312
+ Static-ad guidance prefers a ready company Avatar whenever an actor is needed, chosen for the buyer context. The shared creative instructions also call for deliberate complete-logo selection, one consistent primary CTA treatment, and deterministic rendering of recognizable interfaces.
4313
+
4312
4314
  The creative canvas runs declarative JSON pipelines. You author a graph of nodes (text, image, video, audio, composition, control-flow), `baker canvas run` it, and every node's output drops to disk under `canvas/<run_id>/` so you can watch progress and consume the artifacts.
4313
4315
 
4314
4316
  Auth: same `BAKER_API_KEY` + `BAKER_API_URL` as the rest of the CLI.
4315
4317
 
4318
+ Static resizes, fixes and series continuations keep why the original ad works and the elements its concept depends on, alongside the previous image. Older specs carry their persuasion mechanism and its reason instead. Automatic spec repairs preserve the concept, mechanism, message, brand (including the CTA color) and native interface; they can correct the execution without changing the idea. Change those choices explicitly in `prompt.json` when the brief changes.
4319
+
4316
4320
  ### Quick start
4317
4321
 
4318
4322
  ```bash
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CHATGPT_ADS_REFERENCE,
3
3
  runChatgptRead
4
- } from "./chunk-KLBTXETO.js";
4
+ } from "./chunk-FTWJFDIN.js";
5
5
  import "./chunk-VFIOJD5M.js";
6
6
  import {
7
7
  apiGet
@@ -67,7 +67,7 @@ Examples:
67
67
  },
68
68
  subCommands: {
69
69
  show: accountShowCommand,
70
- update: () => import("./account-writes-ISE4U2FQ.js").then((m) => m.accountUpdateCommand)
70
+ update: () => import("./account-writes-AK42HGRM.js").then((m) => m.accountUpdateCommand)
71
71
  },
72
72
  // A parent must never declare `run`: citty falls through to it after the matched subcommand.
73
73
  args: SHOW_ARGS,
@@ -77,4 +77,4 @@ export {
77
77
  accountCommand,
78
78
  accountHints
79
79
  };
80
- //# sourceMappingURL=account-F6MHQ64I.js.map
80
+ //# sourceMappingURL=account-4H7QVBRK.js.map
@@ -2,11 +2,11 @@ import {
2
2
  compact,
3
3
  schemaArgs,
4
4
  stageChatgptOp
5
- } from "./chunk-35XWJEWH.js";
5
+ } from "./chunk-7J6EHOH6.js";
6
6
  import {
7
7
  CHATGPT_ADS_REFERENCE,
8
8
  chatgptFailure
9
- } from "./chunk-KLBTXETO.js";
9
+ } from "./chunk-FTWJFDIN.js";
10
10
  import {
11
11
  writeJsonEnvelope
12
12
  } from "./chunk-VFIOJD5M.js";
@@ -63,4 +63,4 @@ Examples:
63
63
  export {
64
64
  accountUpdateCommand
65
65
  };
66
- //# sourceMappingURL=account-writes-ISE4U2FQ.js.map
66
+ //# sourceMappingURL=account-writes-AK42HGRM.js.map
@@ -9,10 +9,10 @@ import {
9
9
  schemaArgs,
10
10
  stageChatgptOp,
11
11
  statusCommand
12
- } from "./chunk-35XWJEWH.js";
12
+ } from "./chunk-7J6EHOH6.js";
13
13
  import {
14
14
  CHATGPT_ADS_REFERENCE
15
- } from "./chunk-KLBTXETO.js";
15
+ } from "./chunk-FTWJFDIN.js";
16
16
  import "./chunk-VFIOJD5M.js";
17
17
  import "./chunk-XBOK23HI.js";
18
18
  import "./chunk-IFWP3ZDO.js";
@@ -167,4 +167,4 @@ export {
167
167
  audienceBidsArg,
168
168
  contextHintsArg
169
169
  };
170
- //# sourceMappingURL=ad-group-writes-UU5NNKSO.js.map
170
+ //# sourceMappingURL=ad-group-writes-QQS4223F.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CHATGPT_ADS_REFERENCE,
3
3
  runChatgptListRead
4
- } from "./chunk-KLBTXETO.js";
4
+ } from "./chunk-FTWJFDIN.js";
5
5
  import "./chunk-VFIOJD5M.js";
6
6
  import "./chunk-XBOK23HI.js";
7
7
  import "./chunk-IFWP3ZDO.js";
@@ -52,11 +52,11 @@ Examples:
52
52
  },
53
53
  subCommands: {
54
54
  list: adGroupsListCommand,
55
- create: () => import("./ad-group-writes-UU5NNKSO.js").then((m) => m.adGroupsCreateCommand),
56
- update: () => import("./ad-group-writes-UU5NNKSO.js").then((m) => m.adGroupsUpdateCommand),
57
- pause: () => import("./ad-group-writes-UU5NNKSO.js").then((m) => m.adGroupsPauseCommand),
58
- resume: () => import("./ad-group-writes-UU5NNKSO.js").then((m) => m.adGroupsResumeCommand),
59
- archive: () => import("./ad-group-writes-UU5NNKSO.js").then((m) => m.adGroupsArchiveCommand)
55
+ create: () => import("./ad-group-writes-QQS4223F.js").then((m) => m.adGroupsCreateCommand),
56
+ update: () => import("./ad-group-writes-QQS4223F.js").then((m) => m.adGroupsUpdateCommand),
57
+ pause: () => import("./ad-group-writes-QQS4223F.js").then((m) => m.adGroupsPauseCommand),
58
+ resume: () => import("./ad-group-writes-QQS4223F.js").then((m) => m.adGroupsResumeCommand),
59
+ archive: () => import("./ad-group-writes-QQS4223F.js").then((m) => m.adGroupsArchiveCommand)
60
60
  },
61
61
  // A parent must never declare `run`: citty falls through to it after the matched subcommand.
62
62
  args,
@@ -65,4 +65,4 @@ Examples:
65
65
  export {
66
66
  adGroupsCommand
67
67
  };
68
- //# sourceMappingURL=ad-groups-CGFXZNIA.js.map
68
+ //# sourceMappingURL=ad-groups-WGPDPUI2.js.map
@@ -7,10 +7,10 @@ import {
7
7
  schemaArgs,
8
8
  stageChatgptOp,
9
9
  statusCommand
10
- } from "./chunk-35XWJEWH.js";
10
+ } from "./chunk-7J6EHOH6.js";
11
11
  import {
12
12
  CHATGPT_ADS_REFERENCE
13
- } from "./chunk-KLBTXETO.js";
13
+ } from "./chunk-FTWJFDIN.js";
14
14
  import "./chunk-VFIOJD5M.js";
15
15
  import "./chunk-XBOK23HI.js";
16
16
  import "./chunk-IFWP3ZDO.js";
@@ -171,4 +171,4 @@ export {
171
171
  adsUpdateCommand,
172
172
  productAdCreateOp
173
173
  };
174
- //# sourceMappingURL=ad-writes-NALDYWOR.js.map
174
+ //# sourceMappingURL=ad-writes-XE2IE4DS.js.map
@@ -31,10 +31,10 @@ Full guides: __tooling__/docs/tools/baker/ads-<platform>.md (google|meta|linkedi
31
31
  meta: () => import("./meta-A7KM6TF5.js").then((m) => m.metaCommand),
32
32
  linkedin: () => import("./linkedin-FFSDSGGS.js").then((m) => m.linkedinCommand),
33
33
  x: () => import("./x-BFSKFCZD.js").then((m) => m.xCommand),
34
- chatgpt: () => import("./chatgpt-QNUN63YS.js").then((m) => m.chatgptCommand)
34
+ chatgpt: () => import("./chatgpt-7W75X3ER.js").then((m) => m.chatgptCommand)
35
35
  }
36
36
  });
37
37
  export {
38
38
  adsCommand
39
39
  };
40
- //# sourceMappingURL=ads-C47NA2HH.js.map
40
+ //# sourceMappingURL=ads-73PGA4YC.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CHATGPT_ADS_REFERENCE,
3
3
  runChatgptListRead
4
- } from "./chunk-KLBTXETO.js";
4
+ } from "./chunk-FTWJFDIN.js";
5
5
  import "./chunk-VFIOJD5M.js";
6
6
  import "./chunk-XBOK23HI.js";
7
7
  import "./chunk-IFWP3ZDO.js";
@@ -60,12 +60,12 @@ Examples:
60
60
  },
61
61
  subCommands: {
62
62
  list: adsListCommand,
63
- create: () => import("./ad-writes-NALDYWOR.js").then((m) => m.adsCreateCommand),
64
- update: () => import("./ad-writes-NALDYWOR.js").then((m) => m.adsUpdateCommand),
65
- pause: () => import("./ad-writes-NALDYWOR.js").then((m) => m.adsPauseCommand),
66
- resume: () => import("./ad-writes-NALDYWOR.js").then((m) => m.adsResumeCommand),
67
- archive: () => import("./ad-writes-NALDYWOR.js").then((m) => m.adsArchiveCommand),
68
- "create-product": () => import("./ad-writes-NALDYWOR.js").then((m) => m.adsCreateProductCommand)
63
+ create: () => import("./ad-writes-XE2IE4DS.js").then((m) => m.adsCreateCommand),
64
+ update: () => import("./ad-writes-XE2IE4DS.js").then((m) => m.adsUpdateCommand),
65
+ pause: () => import("./ad-writes-XE2IE4DS.js").then((m) => m.adsPauseCommand),
66
+ resume: () => import("./ad-writes-XE2IE4DS.js").then((m) => m.adsResumeCommand),
67
+ archive: () => import("./ad-writes-XE2IE4DS.js").then((m) => m.adsArchiveCommand),
68
+ "create-product": () => import("./ad-writes-XE2IE4DS.js").then((m) => m.adsCreateProductCommand)
69
69
  },
70
70
  // A parent must never declare `run`: citty falls through to it after the matched subcommand.
71
71
  args,
@@ -74,4 +74,4 @@ Examples:
74
74
  export {
75
75
  adsCommand
76
76
  };
77
- //# sourceMappingURL=ads-PV7GZXPR.js.map
77
+ //# sourceMappingURL=ads-BCOSQALY.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  pinnedModelHint,
3
3
  silentModelHint
4
- } from "./chunk-HQSCJYZO.js";
4
+ } from "./chunk-P5T7OZKV.js";
5
5
  import {
6
6
  CLIP_DURATIONS,
7
7
  CLIP_PERSON_GENERATION,
8
8
  CLIP_RESOLUTIONS,
9
9
  VIDEO_MODEL_IDS,
10
10
  resolveLibraryImageIds
11
- } from "./chunk-KQTYTCKQ.js";
11
+ } from "./chunk-HZUDRKGR.js";
12
12
  import {
13
13
  awaitBatch,
14
14
  batchHints,
@@ -32,7 +32,7 @@ import {
32
32
  splitScriptFor,
33
33
  spokenWordsIn,
34
34
  supportsReferenceToVideo
35
- } from "./chunk-CHSNHVYF.js";
35
+ } from "./chunk-CAMX6OHF.js";
36
36
  import "./chunk-YBMVHGY3.js";
37
37
  import {
38
38
  apiGet,
@@ -477,4 +477,4 @@ export {
477
477
  parseClipRefs,
478
478
  parseVideoIds
479
479
  };
480
- //# sourceMappingURL=animate-FWWHSYPL.js.map
480
+ //# sourceMappingURL=animate-AIZ3GS4J.js.map
@@ -6,13 +6,13 @@ import {
6
6
  schemaArgs,
7
7
  stageChatgptOp,
8
8
  stageChatgptOps
9
- } from "./chunk-35XWJEWH.js";
9
+ } from "./chunk-7J6EHOH6.js";
10
10
  import {
11
11
  CHATGPT_ADS_REFERENCE,
12
12
  CHATGPT_AUDIENCE_USES,
13
13
  CHATGPT_MAX_STAGED_MEMBERS,
14
14
  runChatgptListRead
15
- } from "./chunk-KLBTXETO.js";
15
+ } from "./chunk-FTWJFDIN.js";
16
16
  import "./chunk-VFIOJD5M.js";
17
17
  import "./chunk-XBOK23HI.js";
18
18
  import "./chunk-IFWP3ZDO.js";
@@ -265,4 +265,4 @@ export {
265
265
  audiencesCommand,
266
266
  membersFromArgs
267
267
  };
268
- //# sourceMappingURL=audiences-VEKGLWBG.js.map
268
+ //# sourceMappingURL=audiences-TGD5US2M.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  liveViewerLookups,
3
3
  marketQuery
4
- } from "./chunk-7ZHMGXE2.js";
4
+ } from "./chunk-NJXNU2G6.js";
5
5
  import {
6
6
  buildSearchBody
7
7
  } from "./chunk-BNCW67EM.js";
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-5ZDLTE5T.js";
22
22
  import {
23
23
  researchCustomers
24
- } from "./chunk-HBTF25YG.js";
24
+ } from "./chunk-DGUNI37S.js";
25
25
  import "./chunk-S77PZVYM.js";
26
26
  import "./chunk-OZRUJVIQ.js";
27
27
  import "./chunk-WNFIJAUO.js";
@@ -33,8 +33,8 @@ import {
33
33
  findWorkspaceRoot
34
34
  } from "./chunk-DZSIUEGH.js";
35
35
  import "./chunk-W3B4BHQU.js";
36
- import "./chunk-VB6WJJR3.js";
37
- import "./chunk-CHSNHVYF.js";
36
+ import "./chunk-PZXCWSKV.js";
37
+ import "./chunk-CAMX6OHF.js";
38
38
  import "./chunk-RX6F3GEA.js";
39
39
  import {
40
40
  viewerFromKnowledge
@@ -474,4 +474,4 @@ export {
474
474
  briefHints,
475
475
  whatWorks
476
476
  };
477
- //# sourceMappingURL=brief-UO52ZHFI.js.map
477
+ //# sourceMappingURL=brief-YFJHQ5VQ.js.map
@@ -10,10 +10,10 @@ import {
10
10
  schemaArgs,
11
11
  stageChatgptOp,
12
12
  statusCommand
13
- } from "./chunk-35XWJEWH.js";
13
+ } from "./chunk-7J6EHOH6.js";
14
14
  import {
15
15
  CHATGPT_ADS_REFERENCE
16
- } from "./chunk-KLBTXETO.js";
16
+ } from "./chunk-FTWJFDIN.js";
17
17
  import "./chunk-VFIOJD5M.js";
18
18
  import "./chunk-XBOK23HI.js";
19
19
  import "./chunk-IFWP3ZDO.js";
@@ -167,4 +167,4 @@ export {
167
167
  campaignsResumeCommand,
168
168
  campaignsUpdateCommand
169
169
  };
170
- //# sourceMappingURL=campaign-writes-SX52CJYW.js.map
170
+ //# sourceMappingURL=campaign-writes-SXLZFYF6.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CHATGPT_ADS_REFERENCE,
3
3
  runChatgptListRead
4
- } from "./chunk-KLBTXETO.js";
4
+ } from "./chunk-FTWJFDIN.js";
5
5
  import "./chunk-VFIOJD5M.js";
6
6
  import "./chunk-XBOK23HI.js";
7
7
  import "./chunk-IFWP3ZDO.js";
@@ -59,11 +59,11 @@ Examples:
59
59
  },
60
60
  subCommands: {
61
61
  list: campaignsListCommand,
62
- create: () => import("./campaign-writes-SX52CJYW.js").then((m) => m.campaignsCreateCommand),
63
- update: () => import("./campaign-writes-SX52CJYW.js").then((m) => m.campaignsUpdateCommand),
64
- pause: () => import("./campaign-writes-SX52CJYW.js").then((m) => m.campaignsPauseCommand),
65
- resume: () => import("./campaign-writes-SX52CJYW.js").then((m) => m.campaignsResumeCommand),
66
- archive: () => import("./campaign-writes-SX52CJYW.js").then((m) => m.campaignsArchiveCommand)
62
+ create: () => import("./campaign-writes-SXLZFYF6.js").then((m) => m.campaignsCreateCommand),
63
+ update: () => import("./campaign-writes-SXLZFYF6.js").then((m) => m.campaignsUpdateCommand),
64
+ pause: () => import("./campaign-writes-SXLZFYF6.js").then((m) => m.campaignsPauseCommand),
65
+ resume: () => import("./campaign-writes-SXLZFYF6.js").then((m) => m.campaignsResumeCommand),
66
+ archive: () => import("./campaign-writes-SXLZFYF6.js").then((m) => m.campaignsArchiveCommand)
67
67
  },
68
68
  // A parent must never declare `run`: citty falls through to it after the
69
69
  // matched subcommand, so every write would also trigger a live list.
@@ -73,4 +73,4 @@ Examples:
73
73
  export {
74
74
  campaignsCommand
75
75
  };
76
- //# sourceMappingURL=campaigns-X3DPCCSN.js.map
76
+ //# sourceMappingURL=campaigns-YS3OGQXO.js.map
@@ -25,22 +25,22 @@ Subcommands:
25
25
  Full guide: __tooling__/docs/tools/baker/canvas.md`
26
26
  },
27
27
  subCommands: {
28
- run: () => import("./run-MZ7JLI75.js").then((m) => m.runCommand),
29
- rerun: () => import("./rerun-NTDXIB4E.js").then((m) => m.rerunCommand),
30
- validate: () => import("./validate-5MDFJ76K.js").then((m) => m.validateCommand),
31
- critique: () => import("./critique-D74VSOGJ.js").then((m) => m.critiqueCommand),
32
- "viewer-check": () => import("./viewer-check-45T2HLAH.js").then((m) => m.viewerCheckCommand),
33
- catalog: () => import("./catalog-Y3XADCSY.js").then((m) => m.catalogCommand),
28
+ run: () => import("./run-MODGUNGT.js").then((m) => m.runCommand),
29
+ rerun: () => import("./rerun-WYDRHIUJ.js").then((m) => m.rerunCommand),
30
+ validate: () => import("./validate-UMHHNTVU.js").then((m) => m.validateCommand),
31
+ critique: () => import("./critique-YDKPYZLD.js").then((m) => m.critiqueCommand),
32
+ "viewer-check": () => import("./viewer-check-L4B4LIAX.js").then((m) => m.viewerCheckCommand),
33
+ catalog: () => import("./catalog-ZQX6BGXS.js").then((m) => m.catalogCommand),
34
34
  inspect: () => import("./inspect-Q5NHBBHX.js").then((m) => m.inspectCommand),
35
- "scaffold-ad": () => import("./scaffold-ad-M5CWSLZ4.js").then((m) => m.scaffoldAdCommand),
36
- "scaffold-video": () => import("./scaffold-video-EVRMU6WP.js").then((m) => m.scaffoldVideoCommand),
37
- "scaffold-static-ad": () => import("./scaffold-static-ad-QW3JWMXA.js").then((m) => m.scaffoldStaticAdCommand),
38
- "set-prompt": () => import("./set-prompt-VH3S47Z7.js").then((m) => m.setPromptCommand),
39
- "sync-definition": () => import("./sync-definition-TQDIRIR5.js").then((m) => m.syncDefinitionCommand),
40
- stale: () => import("./stale-LTRROC3C.js").then((m) => m.staleCommand)
35
+ "scaffold-ad": () => import("./scaffold-ad-5ZE7KE62.js").then((m) => m.scaffoldAdCommand),
36
+ "scaffold-video": () => import("./scaffold-video-P2PYPWG2.js").then((m) => m.scaffoldVideoCommand),
37
+ "scaffold-static-ad": () => import("./scaffold-static-ad-HJY5HFDL.js").then((m) => m.scaffoldStaticAdCommand),
38
+ "set-prompt": () => import("./set-prompt-DU2G2WTB.js").then((m) => m.setPromptCommand),
39
+ "sync-definition": () => import("./sync-definition-IPUFS5XS.js").then((m) => m.syncDefinitionCommand),
40
+ stale: () => import("./stale-6MJHVEG4.js").then((m) => m.staleCommand)
41
41
  }
42
42
  });
43
43
  export {
44
44
  canvasCommand
45
45
  };
46
- //# sourceMappingURL=canvas-KTALW6HY.js.map
46
+ //# sourceMappingURL=canvas-UJNSHD3B.js.map
@@ -2,13 +2,13 @@ import {
2
2
  catalogView,
3
3
  defaultRegistry,
4
4
  generateCatalog
5
- } from "./chunk-PN4WWIHS.js";
6
- import "./chunk-5QGMMZFQ.js";
5
+ } from "./chunk-WNRV4QH7.js";
6
+ import "./chunk-GKZ2WU75.js";
7
7
  import "./chunk-W3B4BHQU.js";
8
- import "./chunk-Y6QAJNKP.js";
8
+ import "./chunk-NCWCZY5P.js";
9
9
  import "./chunk-DGCUPJZD.js";
10
- import "./chunk-VB6WJJR3.js";
11
- import "./chunk-CHSNHVYF.js";
10
+ import "./chunk-PZXCWSKV.js";
11
+ import "./chunk-CAMX6OHF.js";
12
12
  import "./chunk-RX6F3GEA.js";
13
13
  import "./chunk-5HYSKH77.js";
14
14
  import "./chunk-KIGGMKAE.js";
@@ -62,4 +62,4 @@ var catalogCommand = defineCommand({
62
62
  export {
63
63
  catalogCommand
64
64
  };
65
- //# sourceMappingURL=catalog-Y3XADCSY.js.map
65
+ //# sourceMappingURL=catalog-ZQX6BGXS.js.map
@@ -2,13 +2,13 @@ import {
2
2
  failWriteValidation,
3
3
  productFiltersArg,
4
4
  schemaArgs
5
- } from "./chunk-35XWJEWH.js";
5
+ } from "./chunk-7J6EHOH6.js";
6
6
  import {
7
7
  CHATGPT_ADS_REFERENCE,
8
8
  chatgptAdsProductQuerySchema,
9
9
  runChatgptListRead,
10
10
  runChatgptRead
11
- } from "./chunk-KLBTXETO.js";
11
+ } from "./chunk-FTWJFDIN.js";
12
12
  import "./chunk-VFIOJD5M.js";
13
13
  import {
14
14
  apiGet,
@@ -125,4 +125,4 @@ Examples:
125
125
  export {
126
126
  catalogsCommand
127
127
  };
128
- //# sourceMappingURL=catalogs-G3YEVG6S.js.map
128
+ //# sourceMappingURL=catalogs-BRXEDE56.js.map
@@ -27,21 +27,21 @@ One company connects one ChatGPT Ads account, so there is no account id to pass.
27
27
  Full guide: __tooling__/docs/tools/baker/ads-chatgpt.md`
28
28
  },
29
29
  subCommands: {
30
- account: () => import("./account-F6MHQ64I.js").then((m) => m.accountCommand),
31
- campaigns: () => import("./campaigns-X3DPCCSN.js").then((m) => m.campaignsCommand),
32
- "ad-groups": () => import("./ad-groups-CGFXZNIA.js").then((m) => m.adGroupsCommand),
33
- ads: () => import("./ads-PV7GZXPR.js").then((m) => m.adsCommand),
34
- conversions: () => import("./conversions-TS723AZV.js").then((m) => m.conversionsCommand),
35
- pixels: () => import("./pixels-45A55MOP.js").then((m) => m.pixelsCommand),
36
- audiences: () => import("./audiences-VEKGLWBG.js").then((m) => m.audiencesCommand),
37
- catalogs: () => import("./catalogs-G3YEVG6S.js").then((m) => m.catalogsCommand),
38
- history: () => import("./history-DBIEYQHY.js").then((m) => m.historyCommand),
39
- insights: () => import("./insights-ZIU6FJMS.js").then((m) => m.insightsCommand),
40
- locations: () => import("./locations-74TPQWAT.js").then((m) => m.locationsCommand),
41
- draft: () => import("./draft-THPZFASM.js").then((m) => m.draftCommand)
30
+ account: () => import("./account-4H7QVBRK.js").then((m) => m.accountCommand),
31
+ campaigns: () => import("./campaigns-YS3OGQXO.js").then((m) => m.campaignsCommand),
32
+ "ad-groups": () => import("./ad-groups-WGPDPUI2.js").then((m) => m.adGroupsCommand),
33
+ ads: () => import("./ads-BCOSQALY.js").then((m) => m.adsCommand),
34
+ conversions: () => import("./conversions-D236RTUK.js").then((m) => m.conversionsCommand),
35
+ pixels: () => import("./pixels-TZPF746S.js").then((m) => m.pixelsCommand),
36
+ audiences: () => import("./audiences-TGD5US2M.js").then((m) => m.audiencesCommand),
37
+ catalogs: () => import("./catalogs-BRXEDE56.js").then((m) => m.catalogsCommand),
38
+ history: () => import("./history-Q3QCT64S.js").then((m) => m.historyCommand),
39
+ insights: () => import("./insights-LNAXV2CG.js").then((m) => m.insightsCommand),
40
+ locations: () => import("./locations-2NKBJKBT.js").then((m) => m.locationsCommand),
41
+ draft: () => import("./draft-MNFJ4G3C.js").then((m) => m.draftCommand)
42
42
  }
43
43
  });
44
44
  export {
45
45
  chatgptCommand
46
46
  };
47
- //# sourceMappingURL=chatgpt-QNUN63YS.js.map
47
+ //# sourceMappingURL=chatgpt-7W75X3ER.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  finalOutputLabelsFromCanvas,
3
3
  parseDefinitionStrategyFields
4
- } from "./chunk-OJ5R2OFK.js";
4
+ } from "./chunk-CJCVIEJ5.js";
5
5
  import {
6
6
  readRenderState
7
- } from "./chunk-4D7UBVSG.js";
7
+ } from "./chunk-M242LHLX.js";
8
8
  import {
9
9
  STATIC_AD_ROLE,
10
10
  formatOfAdaptId,
@@ -12,7 +12,7 @@ import {
12
12
  isSignatureLine,
13
13
  sameTag,
14
14
  seriesMemberAd
15
- } from "./chunk-Q43MLYXE.js";
15
+ } from "./chunk-T2PC5AVH.js";
16
16
  import {
17
17
  fetchRunRecord
18
18
  } from "./chunk-A4LOJ2VD.js";
@@ -31,11 +31,11 @@ import {
31
31
  nodesWithRole,
32
32
  relaidPictureRole,
33
33
  rolesById
34
- } from "./chunk-5QGMMZFQ.js";
34
+ } from "./chunk-GKZ2WU75.js";
35
35
  import {
36
36
  isAdSpec,
37
37
  readAdSpec
38
- } from "./chunk-VB6WJJR3.js";
38
+ } from "./chunk-PZXCWSKV.js";
39
39
  import {
40
40
  sha256Hex,
41
41
  toModelSafeImage
@@ -506,4 +506,4 @@ export {
506
506
  writeSeriesMemberCanvas,
507
507
  seriesRunHints
508
508
  };
509
- //# sourceMappingURL=chunk-J4LSFZCF.js.map
509
+ //# sourceMappingURL=chunk-4SG4RW2P.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  REF_PREFIX
3
- } from "./chunk-5QGMMZFQ.js";
3
+ } from "./chunk-GKZ2WU75.js";
4
4
 
5
5
  // src/commands/canvas/node-preview.ts
6
6
  var MAX_PARAMS_PREVIEW_LENGTH = 4e3;
@@ -57,4 +57,4 @@ ${body}` : header || body || compactJson(record);
57
57
  export {
58
58
  nodeParamsPreview
59
59
  };
60
- //# sourceMappingURL=chunk-W4VS475D.js.map
60
+ //# sourceMappingURL=chunk-6N6WKAJM.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  chatgptDraftOpInputSchema,
3
3
  chatgptFailure
4
- } from "./chunk-KLBTXETO.js";
4
+ } from "./chunk-FTWJFDIN.js";
5
5
  import {
6
6
  writeJsonEnvelope
7
7
  } from "./chunk-VFIOJD5M.js";
@@ -271,4 +271,4 @@ export {
271
271
  statusCommand,
272
272
  productFiltersArg
273
273
  };
274
- //# sourceMappingURL=chunk-35XWJEWH.js.map
274
+ //# sourceMappingURL=chunk-7J6EHOH6.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  nodeParamsPreview
3
- } from "./chunk-W4VS475D.js";
3
+ } from "./chunk-6N6WKAJM.js";
4
4
  import {
5
5
  outputRatioWarningsFor
6
- } from "./chunk-TD2CL5FE.js";
6
+ } from "./chunk-YK32GUBN.js";
7
7
  import {
8
8
  waitForSheet
9
9
  } from "./chunk-WN4KX7GE.js";
@@ -30,7 +30,7 @@ import {
30
30
  variantImage,
31
31
  versionRun,
32
32
  writeSeriesMemberCanvas
33
- } from "./chunk-J4LSFZCF.js";
33
+ } from "./chunk-4SG4RW2P.js";
34
34
  import {
35
35
  buildFailedRunRecord,
36
36
  buildInitialRunRecord,
@@ -39,7 +39,7 @@ import {
39
39
  finalFiles,
40
40
  finalOutputLabelsFromCanvas,
41
41
  nodeOutputsToRecord
42
- } from "./chunk-OJ5R2OFK.js";
42
+ } from "./chunk-CJCVIEJ5.js";
43
43
  import {
44
44
  clearLegacyDirtyMarker,
45
45
  readRenderState,
@@ -48,7 +48,7 @@ import {
48
48
  recordReviewOutcome,
49
49
  recordSeriesLeadRun,
50
50
  recordSnapshot
51
- } from "./chunk-4D7UBVSG.js";
51
+ } from "./chunk-M242LHLX.js";
52
52
  import {
53
53
  BRAND_LOGO_ROLE,
54
54
  CLAIMS_MODEL,
@@ -76,7 +76,7 @@ import {
76
76
  uncastPeople,
77
77
  wireNamedPeople,
78
78
  wireProofBadges
79
- } from "./chunk-Q43MLYXE.js";
79
+ } from "./chunk-T2PC5AVH.js";
80
80
  import {
81
81
  advanceDefinitionStatus
82
82
  } from "./chunk-3ACMDRSE.js";
@@ -100,7 +100,7 @@ import {
100
100
  viewerCheckBeforeRender,
101
101
  viewerCheckSkip,
102
102
  viewerChecksSpent
103
- } from "./chunk-7ZHMGXE2.js";
103
+ } from "./chunk-NJXNU2G6.js";
104
104
  import {
105
105
  holdUnbilledSpend,
106
106
  holdWhenSettled,
@@ -118,7 +118,7 @@ import {
118
118
  createEngineFromEnv,
119
119
  resolveConcurrency,
120
120
  ulid
121
- } from "./chunk-PN4WWIHS.js";
121
+ } from "./chunk-WNRV4QH7.js";
122
122
  import {
123
123
  BackendClient,
124
124
  LOGO_COMPOSITE_ROLE,
@@ -140,7 +140,7 @@ import {
140
140
  regenerateTargets,
141
141
  rolesById,
142
142
  staticMasterFormat
143
- } from "./chunk-5QGMMZFQ.js";
143
+ } from "./chunk-GKZ2WU75.js";
144
144
  import {
145
145
  requireCredentialsFromEnv
146
146
  } from "./chunk-W3B4BHQU.js";
@@ -152,7 +152,7 @@ import {
152
152
  reviewRenderedStatic,
153
153
  samePictureSizes,
154
154
  staticVerdict
155
- } from "./chunk-Y6QAJNKP.js";
155
+ } from "./chunk-NCWCZY5P.js";
156
156
  import {
157
157
  AdSpecSchema,
158
158
  adSpecJsonSchema,
@@ -164,13 +164,13 @@ import {
164
164
  nativeSurfaceName,
165
165
  readAdSpec,
166
166
  readInterfaceWords
167
- } from "./chunk-VB6WJJR3.js";
167
+ } from "./chunk-PZXCWSKV.js";
168
168
  import {
169
169
  GLANCE_CHECK_MODEL,
170
170
  VIEWER_CHECK_MODEL,
171
171
  canonicalize,
172
172
  nearestSupportedAspectRatio
173
- } from "./chunk-CHSNHVYF.js";
173
+ } from "./chunk-CAMX6OHF.js";
174
174
  import {
175
175
  RENDER_REVIEW_MODEL,
176
176
  RENDER_REVIEW_UNAVAILABLE,
@@ -2102,6 +2102,10 @@ function acceptRepair(before, answer) {
2102
2102
  const now = AdSpecSchema.safeParse(spec);
2103
2103
  if (!was.success || !now.success) return null;
2104
2104
  if (JSON.stringify(was.data) === JSON.stringify(now.data)) return null;
2105
+ for (const key of ["concept", "mechanism", "message", "brand"]) {
2106
+ if (JSON.stringify(was.data[key]) !== JSON.stringify(now.data[key])) return null;
2107
+ }
2108
+ if (was.data.native && was.data.native.surface !== now.data.native?.surface) return null;
2105
2109
  const kept = printedWords(now.data);
2106
2110
  if (!printedWords(was.data).every((text) => kept.includes(text))) return null;
2107
2111
  return { changed: parsed.data.changed, spec };
@@ -2117,6 +2121,8 @@ function buildSpecRepairPrompt(spec, findings, schema) {
2117
2121
  "- A rating or stars shown with no source: name the source only if the spec already states one anywhere; otherwise drop the stars or the rating. Never invent a source, a number or a claim.",
2118
2122
  "- A native screen's layout (where its headline, bubbles or cards sit, what it shows) is changed in its `native` block.",
2119
2123
  "- Keep every line of copy word for word: never reword, shorten or drop one. Keep the schema, the brand and everything the defects do not touch.",
2124
+ "- Preserve `concept`, `mechanism`, `message` and `brand` exactly, including the CTA colour. Fix how the ad executes its idea; never change why it works or remove its load-bearing elements to make a defect pass.",
2125
+ "- Keep a native screen on the same `native.surface`. Notes stays Notes, a review stays on its review platform. Change its layout or content only; never replace it with a physical document or a generic ad.",
2120
2126
  "",
2121
2127
  'Reply with only this JSON, naming only the fields you replace, each by its dotted path in the spec ("scene.layout", "references", "copy.2.position", "native.messages"), with its whole new value: {"changed": "<one plain sentence a marketer reads: what you changed and why>", "set": [{"path": "<dotted path>", "value": <its new value>}]}',
2122
2128
  "",
@@ -3144,4 +3150,4 @@ export {
3144
3150
  executeCanvasRun,
3145
3151
  buildBackendClient
3146
3152
  };
3147
- //# sourceMappingURL=chunk-BY6M3TE5.js.map
3153
+ //# sourceMappingURL=chunk-B5SCU7MJ.js.map