Skip to content

Repository files navigation

Session Shared Scripts

Session Foundation's scheduled jobs and webhooks, and the scripts the platform repos share for translations. One package, session_ops, deployed to one self-hosted box: deploy/README.md installs it.

Jobs

Job What it does Doc
zendesk-digest Weekday Discord digest of the Zendesk tickets awaiting a reply, after closing positive app-store reviews zendesk-digest
zendesk-relay Drafts and sends Zendesk replies from claude: private notes zendesk-relay
github-prs-digest Weekday Discord digest of open pull requests from outside contributors github-prs-digest
crowdin-duplicates Crowdin string slots holding more than one translation, as they open and close crowdin-duplicates
crowdin-sync Weekly: Crowdin translations into pull requests on iOS, Android and the localization module crowdin-sync
snode-list Daily: the fallback service node list into session-ios snode-list
release-stats On demand: download counts of the latest releases release-stats
session-ops-silence Discord alerts for a job that failed, or stopped running session-ops-silence

Run by hand, not scheduled: sogs-ban for community bans, and sogs-perms for a room's per-account permissions.

Development

Every job is a console script declared in pyproject.toml, and one lockfile pins what all of them run.

uv sync                                               # .venv with every dependency
uv run python -m unittest discover -s tests -t .      # every suite
uv run ruff check .

tests/sogs skips itself unless session_util is importable; see its dependencies for why it is not on PyPI. tests/goldens pins the systemd drop-ins generated from jobs.toml.

About

scripts for updating strings projects

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages