Commit Graph
2 Commits
Author SHA1 Message Date
janniclas.loosenandClaude Opus 5.5 e733065b60 feat: lit/library-make-global replaces identical occurrences – dry run, confirm, revision per page
- library_id + targets (post_id, tree_rev, ids from lit/library-find-similar):
  only nodes with the entry's content fingerprint, pages and posts only
- every target checked first (DiviWriter::page: edit_post + tree_rev, P8a;
  StoredNodeGuard of the page on the instance); the entry must be an active
  global entry with one readable root and no reference in any spelling (Q7)
- dry run lists pages with tree_rev, status and live flag; confirm writes each
  page through DiviWriter::commit (revision, change log); live pages without
  revisions get VisibleEdits' backup, refused up front where not faithful
- failure on page N: earlier pages stay replaced, N rolled back, later pages
  untouched; the error names changed_posts/pages, failed_post, unchanged_posts

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01At3V6SjwbMe6eMzVGW3Hs7
2026-09-27 21:41:23 +02:00
janniclas.loosenandClaude Opus 5.5 44c1804c4c feat: lit/library-make-global – node to global module, all or nothing (E10)
- NewLibraryEntry: spec and creation of a new library entry, shared by
  lit/library-save and lit/library-make-global (NewDraft, P7, StoredNodeGuard)
- UsageMatcher::referencesAny() (ruling Q7): a global entry never names any
  entry in any spelling Divi renders (P23/P24 forms, Divi 4 shortcodes inside
  Divi 5 values, values casting to 0); used by library-save scope global and
  make-global
- make-global: entry created, node replaced by GlobalInstance::of, page through
  DiviWriter::commit; refused or rolled-back page deletes the entry, a partial
  page write keeps it (the page may show it); sources are pages and posts only

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01At3V6SjwbMe6eMzVGW3Hs7
2026-09-27 21:35:48 +02:00