fluid_hypothesis: schema_version: "0.1" id: "H-tg-textonly" interface_id: "helix-forge-telegram-publishing" state: "DRAFT" title: "Text alone reaches further than a post constrained by a caption" observation: summary: > Telegram limits a photo caption to 1024 characters, a quarter of the 4096 available to a text message. Attaching a portrait therefore constrains the composition it accompanies, and a post written to 1024 characters is a different piece of writing from one written to 4096. evidence_refs: - "canon:fluid-telegram/TelegramCapabilityCanon.md#MED-01" - "pressure:P-register" affected_cohorts: - "telegram-subscribers" pressure: classes: - "repeated_expectation_mismatch" pressure_refs: - "P-register" severity: 0.6 confidence: 0.7 explanation: claim: > The scarce resource in a condensed post is room to say something specific. A generated portrait is decorative and interchangeable across entries; a concrete detail about what someone actually did is not. Trading three quarters of the available text for a picture spends the thing that makes a post worth reading on the thing that makes it look like everything else in the feed. reach: score: 0.4 explains: - "P-register" notes: > Narrow but clean. It settles one delivery question decisively, and the answer transfers to fluid-x and fluid-substack, which face the same question under different feeds. proposed_adaptation: class: "presentation" summary: > Publish the post as a text message with a link to the source entry, and no attached visual. implementation_scope: "interface_only" backend_requirements: required: false requirement_refs: [] expected_outcomes: - metric: "engagement_rate" cohort: "telegram-subscribers" target: 0.05 direction: "higher" - metric: "source_link_rate" cohort: "telegram-subscribers" target: 0.02 direction: "higher" guardrails: - metric: "unreviewed_publication" operator: "==" threshold: false - metric: "missing_source_attribution" operator: "==" threshold: false - metric: "missing_subject_consent" operator: "==" threshold: false - metric: "error_rate" operator: "<=" threshold: 0.01 fitness_dimensions: expected: client_utility: 0.2 discoverability: 0.3 simplicity: 0.3 correctness: 0.0 security: 0.0 complexity: expected_delta: operation_count: 0 concept_count: 0 cognitive_load: 0.1 score: 0.05 risk: level: "LOW" reasons: - "presentation only; no contract, authorization or consent change" - "the simpler arm; nothing to attach and nothing to fail" economics: estimated_experiment_cost: 0.0 estimated_implementation_cost: 0.0 currency: "EUR" expected_value_class: "MEDIUM" learning_value: score: 0.7 notes: > If this wins, the campaign stops producing portraits for publication and spends that effort on the writing instead. success_criteria: expression: > engagement_rate >= 0.05 AND no guardrail violation failure_criteria: expression: > any hard guardrail violation OR engagement_rate at or below the rival arm over the same window competition: group_id: "CG-tg-delivery" alternatives: - "H-tg-visual" outcome: status: null summary: null evidence_refs: []