Skip to content

feat: modernize cleanup workflow and add Zulip - #12

Merged
chck merged 20 commits into
masterfrom
feat/modernize-and-add-zulip
Sep 17, 2026
Merged

chck merged 20 commits into
masterfrom
feat/modernize-and-add-zulip

Conversation

@chck

@chck chck commented Sep 17, 2026

Copy link
Copy Markdown
Owner

Summary

  • modernize synr to Go 1.27 with current Slack and YAML dependencies
  • replace the legacy implementation with fail-closed domain, use-case, and adapter layers
  • add preview-by-default cleanup for Slack, Chatwork, and Zulip; mutation requires --apply
  • move credentials to environment variables and validate strict non-secret YAML configuration
  • add race-tested provider fixtures, pre-commit checks, GitHub Actions, and GoReleaser v2 configuration
  • document the new CLI, configuration, credentials, and provider-specific safety rules

Safety behavior

  • list and evaluate every conversation before any mutation
  • never leave protected, unknown-activity, malformed, or unsupported conversations
  • stop at the first leave failure and report partial progress
  • inspect complete Slack channel and history pagination, including thread replies
  • protect Slack general, Chatwork direct/sticky/My Chat, and Zulip pinned channels

Breaking changes

  • CLI is now synr scan --service <slack|chatwork|zulip>
  • configuration uses ${XDG_CONFIG_HOME:-$HOME/.config}/synr/config.yaml
  • credentials are read only from SYNR_* environment variables
  • the old secrets file and legacy command flags are removed

Verification

  • makers check (format, vet, race tests, build, govulncheck)
  • makers cli-help
  • makers modules
  • makers test-preview-repeat
  • makers goreleaser-check
  • pre-commit run --all-files
  • actionlint .github/workflows/ci.yml .github/workflows/release.yml
  • git diff --check

No live service mutation or release was performed. Discord support remains deferred to #11.

chck and others added 20 commits September 18, 2026 06:27
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
@chck
chck merged commit 4baf134 into master Sep 17, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant