Skip to content

Phase 3, Task 12: Make GoogleTagManagerIntegration rewrite fragment-safe #587

@aram356

Description

@aram356

Parent: #563

Summary

`GoogleTagManagerIntegration::rewrite()` checks `content.contains("googletagmanager.com")` on individual text fragments. If lol_html splits `"google" | "tagmanager.com/gtm.js"` across chunks, the match fails silently.

Changes

  • Accumulate text fragments until `last_in_text_node()` is true
  • Match and rewrite on the complete accumulated text
  • Add regression test with small chunk size that splits an inline GTM script mid-domain

File: `crates/trusted-server-core/src/integrations/google_tag_manager.rs`

Plan

See `docs/superpowers/specs/2026-03-25-streaming-response-design.md` — Phase 3

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions