@smart-cloud/publisher-exporter 1.1.57 → 1.1.58

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
@@ -56,7 +56,7 @@ npx @smart-cloud/publisher-exporter queue-runner --runtime-dir /srv/site/runtime
56
56
  ## Crawl Modes And Repair Workflows
57
57
 
58
58
  - `crawl` without extra flags performs a normal full crawl, asset download, and final text rewrite.
59
- - `crawl --crawl-mode incremental` reuses the existing crawl manifest when possible and rewrites only the files affected by re-crawled pages, text assets, or changed asset-map entries.
59
+ - `crawl --crawl-mode incremental` reuses the existing crawl manifest when possible and rewrites only the files affected by re-crawled pages, text assets, or changed asset-map entries. After a successful unlimited discovery pass it also removes exporter-generated HTML that is no longer present in the current manifest and records exact deletion tombstones for the deploy step. Post-crawl copy-map destinations remain protected.
60
60
  - An incremental crawl now fails closed when the remote WP Suite subscription configuration cannot be loaded. It never silently falls back to a full crawl that clears the existing output tree.
61
61
  - `crawl --resume-rewrite` skips discovery, rendering, and asset download, then reruns the final text rewrite over the existing output tree using the current rewrite rules.
62
62
  - `crawl --retry-timeouts` retries timed-out URLs from the latest archived full crawl or publish log snapshot.
@@ -176,7 +176,7 @@ Prune old archive directories with `publisher-exporter prune-logs --runtime-dir
176
176
  - If direct CLI execution seems to ignore the expected runtime state, verify that `PUBLISHER_CONFIG` and `STATIC_PUBLISHER_RUNTIME_DIR` both point at the same runtime tree. A mismatched config path and runtime dir can make the run look idle or incomplete.
177
177
  - Prefer incremental crawl when the existing manifest is trusted and you only need a fast recrawl of changed pages or assets. Prefer a full crawl when discovery rules changed, the manifest is missing or suspect, or you want a clean end-to-end rebuild.
178
178
  - JavaScript bundle discovery follows only explicit dynamic `import()` calls and fixed Webpack chunk-filename mappings such as `runtime.u = () => "custom-block-parser.js"`. It does not infer dependencies from arbitrary quoted paths or application-specific loader calls; add those manually as extra assets when needed.
179
- - In `sdk-upload-delete` mode, remote-only S3 objects are protected unless the crawl deploy plan contains an explicit manifest-backed deletion tombstone. Protected keys are listed in `deploy-diff.json` and the deploy log. This intentionally favors availability over automatically removing an unverified remote-only object.
179
+ - In `sdk-upload-delete` mode, remote-only S3 objects are protected unless the crawl deploy plan contains an explicit manifest-backed deletion tombstone. Successful unlimited incremental discovery reconciles exporter-generated local HTML with the current crawl manifest and creates those exact tombstones for orphaned HTML. Protected keys are listed in `deploy-diff.json` and the deploy log. This intentionally favors availability over automatically removing an unverified remote-only object.
180
180
  - `queue-runner-heartbeat.json` reports both the exporter package version and the installed `@smart-cloud/wpsuite-core` version. Crawl logs also report the runtime `virtualAssetBaseUrl`, remote config loader status, and resolved subscription type without logging the runtime token. Legacy runtime input using `uploadUrl` is accepted during migration but normalized to `virtualAssetBaseUrl`.
181
181
  - For generated 404 capture, set `generated404RequestPath` to a path that really returns HTTP 404 from the origin. The exporter validates that response before reusing it as the generated 404 page.
182
182