Commit Graph
316 Commits
Author SHA1 Message Date
Jan-Niclas LoosenandClaude Opus 5.5 7f9a087b8b refactor: Divi-Reiter und divi-check in die Divi-Integration verschoben; CoreIndependenceTest prüft auch Cli, ChangeLog, Pods und die Wurzeldateien, erkennt Alias-Importe und kennt nur noch Plugin.php als Ausnahme
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:55:02 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 d0d3488df8 refactor: Übergangs-API der Gesamtsperre entfernt (assertWritable, writable, refusal, writeFeatures, released); DiviLocked verlangt die gesperrten Fähigkeiten, Tests bauen Zustände über ReleaseMatrices
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:53:00 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 56947e54cf fix: lit-content-create mit divi auf einer Website ohne Divi verlangt keine Fähigkeiten – execute() antwortet mit unsupported (Divi 5 ist nicht aktiv) statt divi_incompatible samt refused-Eintrag
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:48:23 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 39143c01d0 test: Smoke prüft die Fähigkeiten-Matrix in lit-site-status, Ablehnung nur der betroffenen Werkzeuge, Admin-Hinweis und divi-check
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:36:18 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 20ee173cd0 docs: Guides und Entscheidungsnotiz zur Divi-Freigabe je Fähigkeit
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:33:10 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 a4faeda326 feat: divi-check gibt die Matrix je Fähigkeit aus (Exit 2 bei nicht nutzbarer Fähigkeit); Texte nennen Fähigkeiten statt pauschal gesperrt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:29:38 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 2aef6e1154 feat: lit-site-status, Admin-Tab und Admin-Hinweis zeigen Divi-Fähigkeiten mit Zustand, Quelle, Problemen und betroffenen Werkzeugen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:29:38 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 b92545a8fe fix: Guards laufen auch im permission_callback vor permission() und im try des execute_callback – Lese-Tools antworten bei gesperrter Fähigkeit mit der Ablehnung statt internal_error, werfende Guards ergeben internal_error
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:21:48 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 74cf0c54a8 feat: DiviFeatureGate ersetzt DiviToolGate – Ablehnung je Fähigkeit für Lese- und Schreib-Tools, Details nach D6, kein Hinweis mehr in warnings; DiviContentComposer::refusal prüft seine Fähigkeiten
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:18:39 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 fdbda8012c feat: jedes Divi-Tool und lit/content-create erklärt seine Divi-Fähigkeiten (RequiresDiviFeatures, DeclaresRequirements, FeatureSets); Tabelle Tool → Fähigkeiten als Test
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:14:39 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 e387d8d29e feat: Divi-Adapter sperren je Fähigkeit – ReleaseGate::feature/assertFeature(s), DiviLocked und Ablehnung nennen die betroffenen Fähigkeiten (D6), DiviSaver prüft Seiten schreiben und die Fähigkeit des Speicherbereichs (D5), DesignArea::feature; Test-Standard alle Fähigkeiten freigegeben
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:10:41 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 c4efeb3ba4 feat: Divi-Freigabe je Fähigkeit – CompatibilityMatrix aus Problemen mit Art und Fähigkeiten (ManifestCheck::problems), automatische Freigabe unveränderter Fähigkeiten (Filter lit_mcp_divi_auto_release), Mirror-Probleme im Transient (Format 2), ReleaseStatus trägt die Matrix
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:05:08 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 710444e88d feat: Signatur-Fingerabdruck der Divi-Aufrufe (Reflection); fingerprints.json enthält sig:-Einträge, divi-check --update-reference schreibt sie; Referenz für Divi 5.15.1
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 22:01:56 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 392fe7c569 feat: Divi-Fähigkeiten (DiviFeature, Requirement, ConstantRequirement) an Call, Mirror und Manifest; alle acht Adapter getaggt; Tests für Vollständigkeit und die gepinnte Zuordnung
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 21:59:43 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 e6e0f914ba refactor: ToolAvailability ersetzt die sechs Referenz-Closures in Plugin (Frage vor der Verdrahtung wirft statt still false); DiviIntegration bekommt den Tools-Tab-Zustand als Objekt; Plugin::integrations() mit Verdrahtungstest für Reihenfolge, einmaliges Booten und spätes Binden
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 21:56:36 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 6c59934caa refactor: Divi-Boot-Schritte in DiviIntegration::boot() (Bootable) – Upgrader-Hook, Prüf-Route, CLI und Reiter „Divi“ über lit_mcp_admin_tabs; IntegrationRegistry::boot() bootet jede Integration genau einmal; Prüfseiten-Aufräumen im load-Hook statt beim Rendern
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 21:53:04 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 06148fb8c1 refactor: Kern ohne Divi – Ports BuilderDetector, MediaUsageSource, EnvironmentComponent und ausgeschlossene Post-Typen im ContentSchema; Divi-Implementierungen und Verdrahtung über DiviIntegration/Plugin; CoreIndependenceTest
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 21:49:28 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 abeb4b0eed refactor: AbilityRegistrar nimmt AbilityGuard-Liste und ToolRefusal statt DiviToolGate/DiviLocked; DiviToolGate implementiert AbilityGuard, DiviLocked ToolRefusal; Test mit Fake-Guard und Fake-Refusal ohne Divi
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 21:47:26 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 e7793fd595 refactor: ein Helfer für Gruppen-Kurznamen (NodeSummary::groupShortName), ESCAPED_LETTER_REGEX am UsageQuery-Interface, Docblock DiviComposition::presets; Tests für Muster, Kurzname und Gruppen-Überdeckung
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 17:40:21 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 06398242d6 fix: detach meldet nicht „alles erledigt“, solange nicht lesbare Fundstellen Verweise enthalten können; PageRewriter::apply liefert hidden_count; Tests für Sperre durch nicht lesbare Seiten und post_ids über der Obergrenze
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 17:38:01 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 b805ed64dd fix: lit/divi-presets-assign verweigert leeren Text als Preset (Eingabe und Gruppen); Stapelgrenze und Preset-Schema aus PresetAssignment
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 17:36:45 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 6b5de199f9 fix: Texte zu post_ids und Bearbeitungsrecht nennen forbidden für genannte Live-Seiten; Test für genannte blockierte Live-Seite; Smoke prüft Seiten-IDs numerisch
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 17:28:19 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 10bed73b24 test: Ende-zu-Ende-Test der Zuweisung (Stapel, Gruppen, Überdeckung, Massenzuweisung, detach); Entscheidungsnotiz zu 4b
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 17:25:16 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 5e56cc38f0 fix: lit/divi-design-detach nennt Snapshot und diff auch, wenn die erste Seite nach dem Preset-Schritt scheitert; Tests für Sperre, Markup und fehlende design_rev
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 17:15:40 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 607e0a21ca feat: lit/divi-design-detach – Preset-Verweise aus Seiten und verschachtelten Presets entfernen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 17:09:49 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 d4f235ae5e feat: lit/divi-presets-assign – Presets site-weit zuweisen mit Probelauf und höchstens 50 Seiten je Aufruf
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 17:07:04 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 65a207488e fix: Umschreiber nennt Bibliotheks-IDs globaler Instanzen nur bei sichtbaren Bibliotheks-IDs (P13)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 17:04:30 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 d7a991d130 feat: Seiten-Umschreiber für site-weite Preset-Änderungen (Probelauf, höchstens 50 Seiten, Revision und Protokoll je Seite)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 16:59:39 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 d36e8286e8 feat: Umschreib-Strategien für Preset-Zuweisung und -Entkopplung (TreeRewrite, AssignRewrite, DetachRewrite)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 16:57:33 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 763d765660 feat: Fundstellen aller Module eines Typs, Standard-Gruppen-Presets in der Fundstellensuche (ModuleUsageQuery)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 16:55:54 +02:00
Jan-Niclas LoosenandClaude Haiku 5.5 1f9b50f1a6 feat: Warnung, wenn lokale Werte ein zugewiesenes Preset überdecken
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 16:53:38 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 be6ca5bee0 feat: Presets als Stapel, Gruppen-Presets und clear_overrides im Composer
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 16:48:58 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 fafa140546 feat: GroupKeys und PresetAssignment – Preset-Stapel und Gruppen-Presets über eine Engstelle
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 16:45:29 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 6546e23e7f feat: PresetOverrides – lokale Werte finden, beschreiben und entfernen, die Presets überdecken
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 16:43:39 +02:00
Jan-Niclas LoosenandClaude Haiku 5.5 c3f08e2d33 feat: Outline und Knoten zeigen Gruppen-Presets mit Namen
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 16:41:42 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 d5fd1642b8 fix: PresetComposer liest nur den von der Ability bereinigten Namen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:10:47 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 3d760113ec fix: Standard-Preset löschen – nur ausdrückliche Verweise blockieren, implizite Nutzung im Probelauf
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:10:11 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 75714429be fix: Preset-Änderungen ohne unfiltered_html ablehnen, wenn Divi HTML/CSS anderer Presets entfernen würde
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:09:31 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 048cd9353d fix: DesignLock gegen parallele Bestätigungen; confirm ohne design_rev ist ein Eingabefehler
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:06:52 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 fc8ffeba9e fix: DesignArea mit restore() fürs Zurückschreiben und differences() für bereinigte Werte
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:04:34 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 60c31f9697 fix: Snapshot-Option je Bereich auf 8 MB begrenzen, älteste Einträge fallen heraus
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:03:49 +02:00
Jan-Niclas LoosenandClaude Opus 5.5 fe8a01f878 fix: Sicherheitstest für Redakteure ohne unfiltered_html prüft einen echten Builder-Pfad
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:03:21 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 2ed6093f97 test: Ende-zu-Ende-Test der Presets gegen Divi; Guide und Entscheidungsnotiz zu 4a
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:56:07 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 327f8d2d35 feat: lit/divi-design-snapshots und lit/divi-design-restore (Bereich presets)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:52:20 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 2e8f723b01 feat: lit/divi-presets-delete – unbenutzte Presets löschen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:50:29 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 25720ad086 fix: lit/divi-presets-set – name und rename schließen sich aus, Namensprüfung vorziehen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:48:43 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 b3c3e69a53 feat: lit/divi-presets-set – Presets anlegen und ändern mit Probelauf und Snapshot
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:47:16 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 341782a34f feat: lit/divi-preset-get – Preset mit Einstellungen und Fundstellen lesen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:44:09 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 cc20100cbc feat: PresetComposer – Preset aus Kurz-/Vollform, Modul und Gruppen-Presets
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:42:18 +02:00
Jan-Niclas LoosenandClaude Sonnet 5.5 bb4d9b3baf feat: Änderungs-Pipeline des Designsystems (Probelauf, design_rev, Snapshot, Rollback) und Bereich presets
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 17:39:58 +02:00