feat: add Twitter thread support and cost warning #194

Merged
jmiller merged 1 commits from feature/163-twitter-threads into dev 2026-06-28 15:36:23 +00:00
Owner

Summary\n\n- Auto-threading: Messages exceeding 280 chars are split into reply chains at sentence boundaries\n- Smart splitting: Prefers sentence endings (. ! ?), falls back to word boundaries, then hard cut\n- Cost-optimized posting: Optional text-only first tweet ($0.015) with URL in reply ($0.20)\n- Cost warning: Language string for plugin config alerting users to X API pricing ($0.20/URL post)\n- Thread root tracking: Returns first tweet ID as platform_post_id for the full thread\n\nCloses #163\n\n## Test plan\n\n- [ ] Single tweet <= 280 chars works unchanged (regression)\n- [ ] Message > 280 chars splits into thread with reply chain\n- [ ] Split prefers sentence boundaries over word boundaries\n- [ ] Each tweet in thread is <= 280 chars\n- [ ] Cost-optimized mode posts text first, URL as reply\n- [ ] Cost warning language string displays in plugin config

## Summary\n\n- **Auto-threading**: Messages exceeding 280 chars are split into reply chains at sentence boundaries\n- **Smart splitting**: Prefers sentence endings (`.` `!` `?`), falls back to word boundaries, then hard cut\n- **Cost-optimized posting**: Optional text-only first tweet ($0.015) with URL in reply ($0.20)\n- **Cost warning**: Language string for plugin config alerting users to X API pricing ($0.20/URL post)\n- **Thread root tracking**: Returns first tweet ID as `platform_post_id` for the full thread\n\nCloses #163\n\n## Test plan\n\n- [ ] Single tweet <= 280 chars works unchanged (regression)\n- [ ] Message > 280 chars splits into thread with reply chain\n- [ ] Split prefers sentence boundaries over word boundaries\n- [ ] Each tweet in thread is <= 280 chars\n- [ ] Cost-optimized mode posts text first, URL as reply\n- [ ] Cost warning language string displays in plugin config
jmiller added 1 commit 2026-06-28 15:35:59 +00:00
feat: add Twitter thread support and cost warning (#163)
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
Universal: PR Check / Secret Scan (pull_request) Successful in 10s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Successful in 16s
Branch Cleanup / Delete merged branch (pull_request) Successful in 2s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Universal: Auto Version Bump / Version Bump (push) Successful in 13s
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
831223f7bc
Authored-by: Moko Consulting
jmiller force-pushed feature/163-twitter-threads from 2080375343 to 831223f7bc 2026-06-28 15:35:59 +00:00 Compare
jmiller merged commit a86686c30a into dev 2026-06-28 15:36:23 +00:00
jmiller deleted branch feature/163-twitter-threads 2026-06-28 15:36:25 +00:00
Sign in to join this conversation.
No Reviewers
No labels
Priority -
Type -
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MokoConsulting/MokoSuiteCross#194