• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / tg-spam
83%

Build:
DEFAULT BRANCH: master
Repo Added 06 Dec 2023 12:31AM UTC
Files 31
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH master
branch: master
CHANGE BRANCH
x
Reset
  • master
  • 12-provide-flag-to-not-remove-user-after-unban
  • abnormal-spacing
  • add-from-detected-spam
  • add-shell-completions
  • add-slog
  • admin-info
  • alkk/master
  • approved-users-ui
  • audio-check
  • autoadd-ham
  • ban-user-instead-of-restriction
  • callback
  • cas-retry-fix
  • check-by-id
  • classifier-unlearn
  • clean-invisible-chars
  • clean-msg-fix
  • db-backup
  • dedup-samples
  • dependabot
  • dependabot/github_actions/github-actions-updates-20c91dd2a4
  • dependabot/github_actions/github-actions-updates-fcf4e41b5c
  • dependabot/go_modules/_examples/simplechat/github.com/umputun/tg-spam-1.18.0
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-0c570b14c2
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-28ef041b99
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-2c4077a24b
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-4af97a05b0
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-75e783174d
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-796ea05e18
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-8d185506e8
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-9e39e63601
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-aed0a436bf
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-b841ea8733
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-d503fb43d4
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-dd111468ba
  • dependabot/go_modules/_examples/simplechat/go-modules-updates-e06798f191
  • dependabot/go_modules/_examples/simplechat/modernc.org/sqlite-1.37.0
  • dependabot/go_modules/github.com/go-pkgz/testutils-0.4.2
  • dependabot/go_modules/go-modules-updates-589f0c7bc4
  • dependabot/go_modules/go-modules-updates-75e783174d
  • dependabot/go_modules/go-modules-updates-796ea05e18
  • dependabot/go_modules/go-modules-updates-94abde7b92
  • dependabot/go_modules/go-modules-updates-db89e520f1
  • dependabot/go_modules/go_modules-232a611e2d
  • dependabot/go_modules/go_modules-5a9c29dde4
  • dependabot/go_modules/go_modules-dd7da38a6b
  • detect-story
  • detector-persist
  • download-spam-button
  • drop-chi
  • dyn-update
  • easy-install-docs
  • eliminate-obsolete-flag
  • emoji-optimization
  • empty-text-locator
  • exact-match-stopwords
  • extra-delete-ids
  • extract-lib
  • faster-removal
  • feat/dictionary-management-ui
  • feat/e2e-ui-tests
  • feat/handle-edited-messages
  • feat/meta-contact-only-354
  • feat/sqlite-to-postgres-converter
  • feature-297-openai-thinking
  • feature-custom-prompts
  • feature-db-configuration
  • feature-lua-plugins
  • feature/add-spam-filter
  • feature/aggressive-cleanup
  • feature/auto-ban-threshold
  • feature/bot-no-sound
  • feature/delete-system-messages
  • feature/digitalocean-deployment
  • feature/duplicate-detection
  • feature/duplicate-detection-aggressive-cleanup
  • feature/info-on-unban
  • feature/issue92
  • feature/keyboard-detection
  • feature/mentions-limit
  • feature/openai-check-short-messages
  • feature/report-enhancements
  • feature/resend-orig-msg
  • feature/silent-messages
  • feature/user-spam-reporting
  • feature/username-symbols-check
  • feature/username-userid-stopwords
  • fix-174
  • fix-183
  • fix-295-giveaway-forwards
  • fix-304-reasoning-effort
  • fix-admin-error-propagation
  • fix-ci-caching
  • fix-ci-disk-space
  • fix-firstmgs-count
  • fix-forward-detection
  • fix-gpt5-max-tokens-support
  • fix-info-button-markdown-escaping
  • fix-issue-223
  • fix-openai-short-msg-veto-335
  • fix-optional-user-id
  • fix-orphaned-report-deletion-343
  • fix-samples-migration
  • fix-settings-formatting
  • fix-stopword-space-normalization
  • fix-video-listener-event
  • fix/anonymous-admin-posts-skip-spam-check
  • fix/caption-link-entities
  • fix/channel-ban-370
  • fix/check-quoted-text-for-spam
  • fix/dictionary-import-and-forum-reports
  • fix/duplicate-detection-message-edits
  • fix/image-caption-mentions
  • fix/image-only-spam-reporting
  • fix/issue-348-validate-bot-username
  • fix/issue107
  • fix/media-short-text-detection
  • fix/rest-writeheader-renderjson
  • fix/short-message-approval
  • forward-check
  • hashed-web-passwd
  • ignore-classifier
  • imporve-hist-openai
  • improved-settings-page
  • letterlikе
  • lib-example
  • links-only
  • linter-v2-migration
  • loading-indicator-delete
  • meta-checks
  • min-spam-probability
  • more-commands
  • more-ui
  • multi-first
  • multi-lang
  • multi-storage
  • negative-time
  • no-giveaway
  • normalize-spam-text
  • opeani-ignore
  • open-ai
  • openai-apibase
  • openai-veto
  • optimize-exclude-match
  • optimize-sample-loader
  • paskal/bump_modules
  • paskal/claude
  • paskal/dependabot-disable-updates
  • paskal/dependabot-security-updates
  • paskal/dockerfile_comment
  • paskal/fix_ci
  • paskal/fix_golangci_lint
  • paskal/fix_typos
  • paskal/go-flags
  • paskal/openai_doc
  • paskal/remove-unused-code
  • paskal/remove_unused_moq
  • paskal/small-fixes
  • paskal/switch_to_newer_tb_lib
  • paskal/test_examples
  • paskal/update_doc_and_readme
  • paskal/update_modules
  • paskal/use_ghcrio
  • patch-1
  • persistent-locator
  • persitent-ids
  • pic-caption
  • refactor-admin
  • refs/tags/v0.1.0
  • refs/tags/v0.1.1
  • refs/tags/v0.2.0
  • refs/tags/v0.2.1
  • refs/tags/v0.2.2
  • refs/tags/v0.2.3
  • refs/tags/v0.2.4
  • refs/tags/v1.0.0
  • refs/tags/v1.0.1
  • refs/tags/v1.1.0
  • refs/tags/v1.1.2
  • refs/tags/v1.10.0
  • refs/tags/v1.10.1
  • refs/tags/v1.10.2
  • refs/tags/v1.10.3
  • refs/tags/v1.11.0
  • refs/tags/v1.11.1
  • refs/tags/v1.11.2
  • refs/tags/v1.11.3
  • refs/tags/v1.11.4
  • refs/tags/v1.11.5
  • refs/tags/v1.11.6
  • refs/tags/v1.12.0
  • refs/tags/v1.12.1
  • refs/tags/v1.12.2
  • refs/tags/v1.13.0
  • refs/tags/v1.13.1
  • refs/tags/v1.13.2
  • refs/tags/v1.13.3
  • refs/tags/v1.13.4
  • refs/tags/v1.13.5
  • refs/tags/v1.13.6
  • refs/tags/v1.14.0
  • refs/tags/v1.14.1
  • refs/tags/v1.14.2
  • refs/tags/v1.14.3
  • refs/tags/v1.15.0
  • refs/tags/v1.16.0
  • refs/tags/v1.16.1
  • refs/tags/v1.16.2
  • refs/tags/v1.16.3
  • refs/tags/v1.17.0
  • refs/tags/v1.18.0
  • refs/tags/v1.18.1
  • refs/tags/v1.19.0
  • refs/tags/v1.19.2
  • refs/tags/v1.2.0
  • refs/tags/v1.2.1
  • refs/tags/v1.2.2
  • refs/tags/v1.2.3
  • refs/tags/v1.2.4
  • refs/tags/v1.2.5
  • refs/tags/v1.20.0
  • refs/tags/v1.20.1
  • refs/tags/v1.21.0
  • refs/tags/v1.22.0
  • refs/tags/v1.23.0
  • refs/tags/v1.23.1
  • refs/tags/v1.23.2
  • refs/tags/v1.23.3
  • refs/tags/v1.23.4
  • refs/tags/v1.23.5
  • refs/tags/v1.23.6
  • refs/tags/v1.23.7
  • refs/tags/v1.3.0
  • refs/tags/v1.3.1
  • refs/tags/v1.4.0
  • refs/tags/v1.4.1
  • refs/tags/v1.4.2
  • refs/tags/v1.5.0
  • refs/tags/v1.5.1
  • refs/tags/v1.5.2
  • refs/tags/v1.5.3
  • refs/tags/v1.6.0
  • refs/tags/v1.6.1
  • refs/tags/v1.7.0
  • refs/tags/v1.8.0
  • refs/tags/v1.8.1
  • refs/tags/v1.8.2
  • refs/tags/v1.8.3
  • refs/tags/v1.9.0
  • remove-from-aproved
  • reply-ban
  • req-history
  • retry-openai
  • retry-plain
  • rt-aproved-save
  • settings-ui
  • small-screen-styles
  • soft-ban
  • softmax_float64_underflow
  • spam-storage
  • sqlite-all
  • supers-by-id
  • training-ban
  • training-mode
  • unban-confirm
  • universal-multilang
  • update-go-1.25
  • v1.4.2
  • video-check
  • volume-warns
  • web-checker
  • webapi
  • would

20 Feb 2026 05:57PM UTC coverage: 82.632% (-0.03%) from 82.663%
22235142587

push

github

umputun
fix(files): default samples path to dynamic data path

Previously --files.samples defaulted to "preset" (inside Docker image),
causing migration to re-import from non-persistent path on container
restart, wiping user DB changes made via web UI.

Related to #372

0 of 5 new or added lines in 1 file covered. (0.0%)

6575 of 7957 relevant lines covered (82.63%)

270.13 hits per line

Relevant lines Covered
Build:
Build:
7957 RELEVANT LINES 6575 COVERED LINES
270.13 HITS PER LINE
Source Files on master
  • Tree
  • List 31
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
22235142587 master fix(files): default samples path to dynamic data path Previously --files.samples defaulted to "preset" (inside Docker image), causing migration to re-import from non-persistent path on container restart, wiping user DB changes made via web UI. R... push 20 Feb 2026 06:01PM UTC umputun github
82.63
22197227683 master fix(spam): use SenderChat for channel ban and locator tracking when a channel posts in a group, Telegram uses a shared fake user Channel_Bot (ID 136817688) in msg.From. the actual channel identity is in msg.SenderChat with unique ID and username.... push 19 Feb 2026 07:44PM UTC umputun github
82.66
22192612972 master fix(spam): skip empty messages in duplicate detector Video notes and other media-only messages have no text, causing all empty strings to hash identically and trigger false positive duplicates. Skip empty/whitespace-only messages with early retur... push 19 Feb 2026 05:31PM UTC umputun github
82.5
22125331445 master Add shell completions for bash, zsh, and fish (#368) * Add shell completions for bash, zsh, and fish * use verbose completions for zsh and fish descriptions push 18 Feb 2026 03:34AM UTC web-flow github
82.49
21887900605 master Fix dictionary import with bare quotes and protect forum topics from reports (#367) * fix: handle bare quotes in dictionary import and protect forum topics from reports Dictionary import now reads line-by-line with CSV parsing applied only to li... push 11 Feb 2026 12:35AM UTC web-flow github
82.51
21639593223 master fix(brew): add directory field to publish formula to Formula/ Related to umputun/homebrew-apps#1 push 03 Feb 2026 05:04PM UTC umputun github
82.61
21406541291 master fix(spam): use Quote field for quoted text detection the previous fix used ReplyTo.Text which contains the full replied message. telegram actual quoted text is in the Quote field (TextQuote). Quote takes precedence over ReplyTo.Text when both are... push 27 Jan 2026 05:07PM UTC umputun github
82.55
21372219882 master feat(spam): include quoted/reply-to text in spam detection spammers use quotes from external channels to spread spam content. the bot now concatenates quoted text with the main message for checking, catching spam that was previously invisible to ... push 26 Jan 2026 08:12PM UTC umputun github
82.54
20737847914 master chore(ci): update github actions to latest versions push 06 Jan 2026 04:21AM UTC umputun github
82.53
20730392940 master fix: remove dead code and cleanup trailing whitespace - remove unreachable error check in updateSupers (impossible nil condition) - add package comments for godoc - remove trailing whitespace in SQL queries push 05 Jan 2026 10:00PM UTC umputun github
82.53
See All Builds (1272)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc