@koda-sl/baker-cli 0.359.0-dev.d2f320fd3 → 0.360.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2541,6 +2541,16 @@ baker images extract https://example.com --wait-for 1500 --limit 20
2541
2541
 
2542
2542
  Every image extracted from a page shares the scraped-page URL as `externalUrl`. Big pages can return 100+ images — cap auto-ingest at 20.
2543
2543
 
2544
+ A failed extract says which kind of failure it was, with `retryable` and a `fix`:
2545
+
2546
+ | Code | Meaning | Next move |
2547
+ |------|---------|-----------|
2548
+ | `UNAVAILABLE` | The page reader did not answer or timed out, or the site asked us to slow down | Retry once, then fall back |
2549
+ | `VALIDATION_ERROR` | The page itself refused (e.g. HTTP 404) or is too large to read | Do not retry; fall back |
2550
+ | `INTERNAL_ERROR` | A fault on Baker's side | Do not retry; fall back |
2551
+
2552
+ The fallback is `baker images screenshot <url>` for the page as one image, or `baker images logo <domain>` for the brand's mark. A `503` from any command now maps to `UNAVAILABLE` instead of `INTERNAL_ERROR`.
2553
+
2544
2554
  **Flags:**
2545
2555
 
2546
2556
  | Flag | Description |
@@ -5292,7 +5302,7 @@ Every run gets its own directory:
5292
5302
  - Naming: `<node_id>__<slot>[__<index>].<ext>`.
5293
5303
  - `_final.<ext>` is a copy of whichever node the top-level `output` points at.
5294
5304
  - `manifest.json` is what `baker canvas inspect` reads — duration, cache hit/miss, asset refs, errors.
5295
- - Default root is `canvas/` at the workspace root (the nearest folder with a `package.json` above the canvas file), whichever directory you run from. Override with `--outputs-dir`.
5305
+ - Default root is `./canvas/`. Override with `--outputs-dir`.
5296
5306
 
5297
5307
  ---
5298
5308
 
@@ -5304,7 +5314,7 @@ Cache key:
5304
5314
  sha256(canonical({ node_id, node_version, params, input_hashes, cache_salt, extras }))
5305
5315
  ```
5306
5316
 
5307
- - Entries live in `canvas/.cache/` at the workspace root (index + content-addressed blobs).
5317
+ - Entries live in `./canvas/.cache/` (index + content-addressed blobs).
5308
5318
  - Cache hits re-materialize asset files into the new run dir instantly; misses execute the node and write a new entry atomically.
5309
5319
  - `hyperframe_*` folds a recursive sha256 of the composition directory into `extras` — edit any file in `my-composition/` and the cache busts automatically. No version bump needed.
5310
5320
  - If computing `extras` fails (e.g. the composition directory is unreadable), the node fails with that error — it never falls back to a partial cache key, so stale results can't be served silently.
@@ -5399,8 +5409,8 @@ Validate, then execute the graph. Blocks until done. Logs one line per node. Ret
5399
5409
 
5400
5410
  | Flag | Default | Effect |
5401
5411
  |---|---|---|
5402
- | `--cache-dir <path>` | `<workspace root>/canvas/.cache` | Where content-addressed bytes + cache index live. |
5403
- | `--outputs-dir <path>` | `<workspace root>/canvas` | Root for per-run output directories. |
5412
+ | `--cache-dir <path>` | `./canvas/.cache` | Where content-addressed bytes + cache index live. |
5413
+ | `--outputs-dir <path>` | `./canvas` | Root for per-run output directories. |
5404
5414
  | `--run-id <id>` | auto ULID | Override the generated run id. |
5405
5415
  | `--cache-policy <policy>` | `read_write` | `read_write`, `bypass`, or `read_only`. |
5406
5416
  | `--concurrency <n>` | `5` (or `BAKER_CANVAS_CONCURRENCY`) | Max nodes executing at once within a layer. |
@@ -74,7 +74,7 @@
74
74
  "transcript": "$ref:transcribe.transcript"
75
75
  },
76
76
  "params": {
77
- "composition": "./tiktok-captions-composition",
77
+ "composition": "./packages/cli/canvas/tiktok-captions-composition",
78
78
  "words_per_group": 3,
79
79
  "font_size": 72,
80
80
  "text_color": "#ffffff",
@@ -22,7 +22,7 @@
22
22
  "background": "$ref:person_image.images#0"
23
23
  },
24
24
  "params": {
25
- "composition": "./hello-world-composition",
25
+ "composition": "./packages/cli/canvas/hello-world-composition",
26
26
  "text": "HELLO WORLD!!",
27
27
  "font_size": 128,
28
28
  "text_color": "#ffffff",
@@ -20,9 +20,9 @@ import {
20
20
  shouldEscalate
21
21
  } from "./chunk-2OKSJNLA.js";
22
22
 
23
- // ../../.pnpm-store/v10/links/@/safe-stable-stringify/2.5.0/766ad107c42df28eeadaf0ac2f9089c8a9e200f6ba0b2b1a817b8d536cbdcc49/node_modules/safe-stable-stringify/index.js
23
+ // ../../node_modules/.pnpm/safe-stable-stringify@2.5.0/node_modules/safe-stable-stringify/index.js
24
24
  var require_safe_stable_stringify = __commonJS({
25
- "../../.pnpm-store/v10/links/@/safe-stable-stringify/2.5.0/766ad107c42df28eeadaf0ac2f9089c8a9e200f6ba0b2b1a817b8d536cbdcc49/node_modules/safe-stable-stringify/index.js"(exports, module) {
25
+ "../../node_modules/.pnpm/safe-stable-stringify@2.5.0/node_modules/safe-stable-stringify/index.js"(exports, module) {
26
26
  "use strict";
27
27
  var { hasOwnProperty } = Object.prototype;
28
28
  var stringify = configure2();
@@ -1114,7 +1114,7 @@ function resolveAdaptFormats(params) {
1114
1114
  return params.formats ?? [];
1115
1115
  }
1116
1116
 
1117
- // ../../.pnpm-store/v10/links/@/safe-stable-stringify/2.5.0/766ad107c42df28eeadaf0ac2f9089c8a9e200f6ba0b2b1a817b8d536cbdcc49/node_modules/safe-stable-stringify/esm/wrapper.js
1117
+ // ../../node_modules/.pnpm/safe-stable-stringify@2.5.0/node_modules/safe-stable-stringify/esm/wrapper.js
1118
1118
  var import__ = __toESM(require_safe_stable_stringify(), 1);
1119
1119
  var configure = import__.default.configure;
1120
1120
  var wrapper_default = import__.default;
@@ -9904,4 +9904,4 @@ export {
9904
9904
  defaultRegistry,
9905
9905
  createEngineFromEnv
9906
9906
  };
9907
- //# sourceMappingURL=chunk-K2IKLMCM.js.map
9907
+ //# sourceMappingURL=chunk-AI4HWQVN.js.map